实践篇主要以各容器的挂载和附加命令为主。
系列目录
LaoCat带你认识容器与镜像(一)
LaoCat带你认识容器与镜像(二【一章】)
LaoCat带你认识容器与镜像(二【二章】)
LaoCat带你认识容器与镜像(二【三章】)
LaoCat带你认识容器与镜像(三【上】)
LaoCat带你认识容器与镜像(三【下】)
LaoCat带你认识容器与镜像(四【上】)
LaoCat带你认识容器与镜像(四【下】)
LaoCat带你认识容器与镜像(番外一【Harbor】)
LaoCat带你认识容器与镜像(实践篇一上)
LaoCat带你认识容器与镜像(实践篇一下)
LaoCat带你认识容器与镜像(实践篇二上)
LaoCat带你认识容器与镜像(实践篇二下)
本章内容
本文实操全部基于Ubuntu 20.04
宿主机 => linux服务器本身
Docker => 20.10.22
从该章开始,我们就进入了Docker
实践篇系列了,主要介绍Docker
相关附加命令,与实际日常生产部署注意点等,本章主要围绕Docker
安装并运行之Nginx
、Tomcat
、Jenkins
、GitLab
,大部分命令来源于DockerHub
官网,我们将本章分为上下俩节,为演示方便这里我们新建挂载目录/install_ls
,并对对应的软件本身建立目录,命令如下,上节新建过得就不需要再执行了。
mkdir -p /install_ls/nginx/ /install_ls/tomcat /install_ls/jenkins /install_ls/gitLab
Docker安装并运行Jenkins
Jenkins
作为老牌CI
可持续交付中心,随着GUI
越美观,功能越完善,Jenkins
也成为了持续交付产品里的一把尖刀,想到持续交付就一定有我们今天要部署的Jenkins
,通过Jenkins
官网提供的Docker
安装说明,我们可以看到Jenkins
可以通过俩个不同的镜像来进行构建启动,这里我们使用jenkins/jenkins
来进行演示。
-
首先我们在原
Jenkins
目录下,新建Jenkins
挂载工作目录jenkins_work
,执行命令mkdir /install_ls/jenkins/jenkins_work
。
-
然后我们需要对步骤1的挂载目录进行赋权,为什么这样做,看图!!!
执行命令对挂载目录进行授权,chmod 777 /install_ls/jenkins/jenkins_work/
。 -
接下来我们执行启动命令,
Jenkins
需要映射端口8080
与50000
到宿主机,命令如下。docker run -d \ -p 8080:8080 \ -p 50000:50000 \ -v /install_ls/jenkins/jenkins_work:/var/jenkins_home \ -v /etc/localtime:/etc/localtime \ --name my_jenkins \ jenkins/jenkins
这里我们可以通过docker logs -f my_jenkins
来查看Jenkins
容器是否正常启动,以及获取初次启动Jenkins
解锁的密码。
通过docker ps
可以看到Jenkins
容器正在运行。 -
通过IP加端口,我们访问刚刚创建并启动的
Jenkins
容器。
这里推荐更改Jenkins
的镜像源为国内,进入Jenkins
的挂载工作目录jenkins_work
,找到hudson.model.UpdateCenter.xml
文件,将文件内的<url></url>
标签的内容改为清华大学官方镜像源https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
,保存即可。
到这里我们的Jenkins
就部署完成了。
※ 在实际生产中如果发布JAVA
项目则需要有JDK
与MAVEN
,这俩样不建议Docker
安装。
Docker安装并运行GitLab
Gitlab
安装就比较简单了,通过其官网可以了解到安装Gitlab
容器需要挂载的目录为config
、logs
、data
,映射端口为443
、80
、22
。
-
创建挂载目录,执行命令
mkdir -p /install_ls/gitLab/config /install_ls/gitLab/logs /install_ls/gitLab/data
。
-
执行创建启动命令,执行命令如下。
docker run -d \ -p 443:443 \ -p 8888:80 \ -p 8822:22 \ -v /install_ls/gitLab/config:/etc/gitlab \ -v /install_ls/gitLab/logs:/var/log/gitlab \ -v /install_ls/gitLab/data:/var/opt/gitlab \ --name gitlab \ registry.gitlab.cn/omnibus/gitlab-jh:latest
-
访问IP加端口,我们查看刚刚部署的
Gitlab
容器是否正常启动。 -
首次管理员登录账号是
root
,密码可以通过查看挂载目录config
下的initial_root_password
。
可以看到容器运行正常,恭喜你又学会了一种容器的部署。
※ Gitlab
尤其需要注意备份其数据与配置目录,一旦丢失,恢复的成本将无法估量。
☆ 参考文献:
无
◎ 文中所用到的资源链接:
【Jenkins官网】
https://www.jenkins.io/zh/doc/book/installing/#docker
【Docker Hub Jenkins】
https://hub.docker.com/_/jenkins
【Jenkins官网推荐的Docker Hub Jenkins】
https://hub.docker.com/r/jenkinsci/blueocean/
【您还可以使用其他Jenkins Docker镜像(在Docker Hub上可通过jenkins/jenkins获取)】
https://hub.docker.com/r/jenkins/jenkins/
【Gitlab官网】
https://docs.gitlab.cn/jh/install/docker.html
【Docker Hub Gitlab】
https://hub.docker.com/r/gitlab/gitlab-ce