Skip to content

Commit

Permalink
更新了第92天的文档
Browse files Browse the repository at this point in the history
  • Loading branch information
jackfrued committed Oct 15, 2019
1 parent 7847dd1 commit b9c18a7
Showing 1 changed file with 37 additions and 7 deletions.
44 changes: 37 additions & 7 deletions Day91-100/92.使用Docker部署应用.md
Original file line number Diff line number Diff line change
Expand Up @@ -333,19 +333,51 @@ repl_backlog_first_byte_offset:1
repl_backlog_histlen:1988
```

#### 运行Gitlab
#### 运行GitLab

GitLab是由GitLab Inc.开发的Git仓库管理工具,具有wiki、问题跟踪、持续集成等一系列的功能,分为社区版和企业版。通过Docker提供的虚拟化容器,我们可以安装社区版的Docker,命令如下所示。

因为GitLab需要使用SSH协议进行安全连接,我们要暴露容器的22端口,所以可以先将宿主机SSH连接的22端口修改为其他端口(如:12345),然后再进行后续的操作。

#### 运行Jenkins
```Shell
vim /etc/ssh/sshd_config
```

将其中定义端口的那行代码去掉注释并将端口修改为12345。

```
Port 12345
```

### 构建镜像
重新启动`sshd`服务。

通过上面的讲解,我们已经掌握了如何通过官方提供的镜像来创建容器。当然如果愿意,我们也可以用配置好的容器来生成镜像。简而言之,Docker镜像是由文件系统叠加而成的,系统的最底层是bootfs,相当于就是Linux内核的引导文件系统;接下来第二层是rootfs,这一层可以是一种或多种操作系统(如Debian或Ubuntu文件系统),Docker中的rootfs是只读状态的;Docker利用联合挂载技术将各层文件系统叠加到一起,最终的文件系统会包含有底层的文件和目录,这样的文件系统就是一个镜像,如下图所示。
```Shell
systemctl restart sshd
```

> **提示**:修改端口后应该确保防火墙上也开启对应的端口,否则无法使用SSH连接到Linux服务器。
创建需要用于数据卷映射操作的文件夹。

![](./res/docker-image.png)
```Shell
mkdir -p /root/gitlab/config
mkdir -p /root/gitlab/logs
mkdir -p /root/gitlab/data
```

基于`gitlab/gitlab-ce`镜像创建容器,并暴露80端口(HTTP连接)和22端口(SSH连接)。

```Shell
docker run -d -p 80:80 -p 22:22 --name gitlab -v /root/gitlab/config:/etc/gitlab -v /root/gitlab/logs:/var/log/gitlab -v /root/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce
```

> 说明:GitLab的启动比较缓慢,创建好容器后可能需要等待一段时间才能通过浏览器来进行访问。
首次进入GitLab访问界面会提示我们修改管理员密码,设置好管理员密码后就可以在登录界面输入用户名`root`和刚才设置的密码登录到管理员控制台,在使用上还是非常简单和人性化的。

### 构建镜像

通过上面的讲解,我们已经掌握了如何通过官方提供的镜像来创建容器。当然如果愿意,我们也可以用配置好的容器来生成镜像。简而言之,Docker镜像是由文件系统叠加而成的,系统的最底层是bootfs,相当于就是Linux内核的引导文件系统;接下来第二层是rootfs,这一层可以是一种或多种操作系统(如Debian或Ubuntu文件系统),Docker中的rootfs是只读状态的;Docker利用联合挂载技术将各层文件系统叠加到一起,最终的文件系统会包含有底层的文件和目录,这样的文件系统就是一个镜像。

之前我们讲过了如何查找、列出镜像和拉取(下载)镜像,接下来看看构建镜像的两种方式:

Expand Down Expand Up @@ -809,5 +841,3 @@ docker push jackfrued/webserver
... ...
```
### 集群管理

0 comments on commit b9c18a7

Please sign in to comment.