标签归档:docker

如何制作和使用DinD的Docker镜像

当使用GitLab的流水线功能时,在经过代码检查、项目打包等步骤之后,可能还需要将项目部署至服务器。如果使用容器的方式来部署项目,那么就需要用到Docker构建镜像和启动容器。本文将介绍如何以GitLab Runner的镜像为基础,构建Docker in Docker(简称DinD)的镜像,然后再介绍如何手动构建镜像和启动容器。

注意 继续阅读如何制作和使用DinD的Docker镜像

如何制作和使用Maven的Docker镜像

当使用GitLab CI的流水线功能时,可能需要新增项目打包的阶段,此时就要用到Maven或Gradle进行打包。本文将介绍如何以GitLab Runner的镜像为基础,构建集成Maven功能的Docker镜像,然后再简单介绍如何启动和使用Maven容器。

一、环境描述

1. 虚拟机配置

  • CPU:单核
  • 内存:2 GB
  • 硬盘:120 GB
  • IP:192.168.190.128

2. 操作系统

  • 版本:CentOS 7.4 x86_64 (1708)
  • 安装方式:Minimal

3. Docker

4. GitLab服务器

5. GitLab Runner

二、构建镜像

1. 创建Dockerfile文件

继续阅读如何制作和使用Maven的Docker镜像

如何制作和使用GitLab Runner的Docker镜像

GitLab Runner是一个开源项目,用来执行用户的任务,然后将执行结果返回给GitLab服务器。GitLab Runner可以和GitLab的CI/CD机制结合使用,后者是开源的持续集成/持续交付服务。本文将以自建的CentOS镜像为基础,构建GitLab Runner的Docker镜像,实现CI/CD服务的快速部署。

一、环境描述

1. 虚拟机配置

  • CPU:双核
  • 内存:4 GB
  • 硬盘:120 GB
  • IP:192.168.190.128

2. 操作系统

  • 版本:CentOS 7.4 x86_64 (1708)
  • 安装方式:Minimal

3. Docker

4. 基础镜像

5. GitLab

6. GitLab Runner

  • 版本:10.5.0
  • 安装方式:yum

二、构建镜像

1. 新建Dockerfile文件

继续阅读如何制作和使用GitLab Runner的Docker镜像

如何制作和使用GitLab的Docker镜像

虽然GitLab提供了官方的Docker镜像,但是并没有实现中文化,本文将基于官方的Dockerfile和配置脚本,整合GitLab中文社区的汉化包,介绍如何制作和使用中文版的GitLab镜像。

PS:本来打算以自建的CentOS 6.9镜像为基础构建GitLab镜像,这样就能实现完全自定义的GitLab镜像,但是在安装RPM包时遇到ruby_block[supervise_redis_sleep] action run的问题,导致安装进程卡死,目前尚未找到解决方案,因此本文决定基于官方的Dockerfile构建镜像。

一、环境描述

1. 虚拟机配置

  • CPU:双核
  • 内存:4 GB
  • 硬盘:120 GB
  • IP:192.168.190.128

2. 操作系统

  • 版本:CentOS 7.4 x86_64 (1708)
  • 安装方式:Minimal

3. Docker

4. GitLab

  • 版本:GitLab CE 10.5.3
  • 安装方式:OmniBus

二、下载omnibus-gitlab工程

继续阅读如何制作和使用GitLab的Docker镜像

如何创建CentOS系统的Docker基础镜像

在使用Docker容器时,我们经常需要基于一些基础镜像(Base Image)来构建符合自己要求的镜像。通常,我们会使用DockerHub或其他镜像市场提供的基础镜像。虽然这样很方便,但是我们并不知道第三方提供的基础镜像的实现细节和安全性,若在生产环境贸然使用这些基础镜像,则可能会带来技术隐患。因此,有必要创建自己的基础镜像!本文将详述创建CentOS系统(6.9版本和7.4版本)的Docker基础镜像的两种方法,分别是:

  • 通过tar打包已有的CentOS系统,然后导入Docker镜像仓库;
  • 通过mkimage-yum.sh脚本,使用yum下载和安装必要的软件包,然后导入Docker镜像仓库。

继续阅读如何创建CentOS系统的Docker基础镜像

如何将SpringBoot工程一键部署为容器化服务

在多系统协同开发时,经常需要在开发环境进行系统联调。传统方式是通过IDE工具启动系统工程,然后其他系统再通过开发主机的IP地址和端口进行联调。这种方式的效率较低,主要表现在:

  • 由于IDE的系统工程正在运行,开发人员无法继续编写代码。
  • 由于系统联调,开发人员无法调试和修改其他功能。

现在,将Docker容器和IDE工具相结合,便能较好地解决上述两个问题,有助于提升系统开发效率。本文将会使用两种比较流行的IDE工具:

  • 基于Eclipse的Spring Tool Suite(STS)
  • IntelliJ IDEA

继续阅读如何将SpringBoot工程一键部署为容器化服务

Docker入门教程(4):Swarm

前提条件

简介

继续阅读Docker入门教程(4):Swarm

Docker入门教程(3):服务

前提条件

简介

继续阅读Docker入门教程(3):服务