共计 4774 个字符,预计需要花费 12 分钟才能阅读完成。
这篇文章主要介绍“Docker 宿主机环境怎么搭建”,在日常操作中,相信很多人在 Docker 宿主机环境怎么搭建问题上存在疑惑,丸趣 TV 小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Docker 宿主机环境怎么搭建”的疑惑有所帮助!接下来,请跟着丸趣 TV 小编一起来学习吧!
本文所演示环境涉及三台 (类) 服务器,不过在文中仅涉及到对后两类服务器的配置:
Git 服务器:172.16.1.8,现有服务,用于管理代码;
Docker 宿主机服务器:172.19.10.157,待搭建,用于运行 docker 容器;
Jenkins 服务器:172.19.10.232,待搭建,用于运行 Jenkins 服务。
一、安装和初始化 Jenkins
Jenkins 服务器中已经安装配置好 JDK/MAVEN/TOMCAT 几个软件的运行环境。在本例中,所使用的上述三软件的版本为:apache-maven-3.3.3、jdk1.7.0_09、tomcat-7.0.34,并均运行于操作系统用户 tomcat 下。
提示 1:以下操作是在 Jenkins 服务器执行,如非特别说明,均是在 tomcat 用户下操作。
提示 2:在启动 tomcat 服务之前,建议先修改相关环境变量,通过 JAVA_OPS 参数为 JAVA 虚拟机分配适当的内存空间,避免 Tomcat 运行过程中出现内存溢出的情况。
例如:
[tomcat@web01 ~]$ vi /home/tomcat/tomcat-7.0.34/bin/catalina.sh
文件头部增加下列内容(考虑到本地测试服务器配置较差,因此分配内存较小,大家可基于个人实际情况对参数值进行修改):
JAVA_OPTS= -server -Xms512M -Xmx1024M -XX:PermSize=128M -XX:MaxPermSize=256m -Dcom.sun.management.jmxremote -Duser.timezone=GMT+08 -Djava.awt.headless=true
Jenkins 的安装十分简单,下载好的 Jenkins 就是一个 war 包,直接复制到 Tomcat 的 webapps 目录下即可运行。
那么我们就先来下载最新版本的 jenkins,并保存到 Tomcat 应用目录下:
[tomcat@web01 ~]$ wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war -P /home/tomcat/tomcat-7.0.34/webapps
启动 tomcat 服务:
[tomcat@web01 ~]$ tomcat-7.0.34/bin/catalina.sh start
Using CATALINA_BASE: /home/tomcat/tomcat-7.0.34
Using CATALINA_HOME: /home/tomcat/tomcat-7.0.34
Using CATALINA_TMPDIR: /home/tomcat/tomcat-7.0.34/temp
Using JRE_HOME: /home/tomcat/jdk1.7.0_60
Using CLASSPATH: /home/tomcat/tomcat-7.0.34/bin/bootstrap.jar:/home/tomcat/tomcat-7.0.34/bin/tomcat-juli.jar
启动过程中注意观察 tomcat 的输出日志,我们下载的 jenkins War 会自动进行解压缩和初始化,过程中创建的默认管理员帐户和密码信息,在日志文件中会有所体现,例如:
[tomcat@web01 ~]$ tail -100f tomcat-7.0.34/logs/catalina.out
……………
Jan 21, 2017 13:04:11 PM jenkins.install.SetupWizard init
INFO:
*************************************************************
*************************************************************
*************************************************************
Jenkins initial setup is required. An admin user has been created and a password generated.
Please use the following password to proceed to installation:
8c5abb9fcc7b4258aadac65ed5113b5a
This may also be found at: /home/tomcat/.jenkins/secrets/initialAdminPassword
*************************************************************
*************************************************************
*************************************************************
…………
INFO: Finished Download metadata. 20,529 ms
…………
然后通过浏览器访问 jenkins,未登录的情况下会跳转到登录页,第一次登录时需要输入初始化帐户的密码,也就是前面我们在日志文件中提示的那段字段:
输入管理员密码,点击 Continue 按钮后,会有一个初始化的过程,需要等待个几秒钟,而后将跳转到选装插件的页面,如下所示:
我们选择后者,以自定义的方式安装需要的组件。
默认情况下,它也仍为帮我们选择一些必备 / 常用组件(点上图红色箭头所指的标签,会对插件进行默认勾选),在此基础之上,我们又新增了一些组件,主要包括:
? Git plugin:支持基于 Git 进行构建的插件;
? Git Parameter Plug-In:我们的软件发布是基于分支,而不是的基于 master,通过 Git Parameter 插件方便我们选择要构建的分支版本,当然如果您没有这方面的需求,那么也可以不安装本插件;
? GitLab Plugin:因为我们本地的 Git 是基于 GitLab 搭建的一套私服,选择这一组件主要是为了能够触发一些自动化构建相关的操作;
? Maven Integration plugin:发布 Maven2/ 3 项目的插件;
? Publish Over SSH:基于 SSH 发布到另外的节点;
? SSH plugin:与上同理;
当然大家也可以直接全选,安装所有的插件,尽管可能有很多插件都用不上。其实这里想告诉大家,不必过于纠结安装什么插件,以及安装的正确与否,那个都不重要,因为我们随时可以根据需求来调用我们安装的插件。
选择完要安装的插件后点击 Install:
之后就需要等待一会了,根据你选择插件的多寡,耗费的时间也不同。等到所有的插件全部安装完之后,还有一个步骤,创建管理员帐户:
然后,就能看到 Jenkins 的主界面了。
二、搭建 docker 宿主机
提示:以下操作是在 docker 宿主机端执行,如非特别说明,均是在 root 用户下操作。
增加一个软件安装源,将 docker 官方地址做为软件的安装源加入本地三方源地址,编辑文件如下:
root@docker01:~# vi /etc/apt/sources.list.d/docker.list
只需增加一行:
deb [arch=amd64] https://apt.dockerproject.org/repo debian-jessie main
接下来别忙着执行 apt-get,先更新一下 apt 源,以确保能够检测到最新的资源,执行命令如下:
root@docker01:~# apt-get update
如果执行 apt-get update 时遇到:E: The method driver /usr/lib/apt/methods/https could not be found. 那么先执行:# apt-get install apt-transport-https
然后就可以通过 apt-get 安装 docker 了,执行命令如下:
root@docker01:~# apt-get install docker-engine
Reading package lists… Done
Building dependency tree
Reading state information… Done
……………….
安装成功之后,通过 docker 命令查看当前 docker 版本:
root@docker01:~# docker –version
Docker version 1.13.1, build 092cba3
接下来我们创建一个专用用户 docker 并设置初始密码(为演示方便也设置为 docker):
root@docker01:~# useradd docker -d /home/docker -s /bin/bash -g docker
root@docker01:~# echo docker:docker | chpasswd
这一步的目的主要是为了在 jenkins 中配置 ssh 发布时,不必直接使用 root 这样一个具备超大权限的用户。
此时镜像、容器都是空的。
root@docker01:~# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
root@docker01:~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
考虑到我们接下来运行的 JAVA 工程要运行于 tomcat 容器,因此我们先拉取一个 tomcat 镜像,做为基础镜像,执行命令如下:
root@docker01:~# docker pull tomcat
Using default tag: latest
latest: Pulling from library/tomcat
5040bd298390: Pulling fs layer
fce5728aad85: Pulling fs layer
c42794440453: Pulling fs layer
9789263043d1: Waiting
6c6ea13aad15: Waiting
……………
……………
Digest: sha256:2c72f00904dc057441c388bb9101f7ca254174c9b061f99789e48bf495226deb
Status: Downloaded newer image for tomcat:latest
root@docker01:~# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
tomcat latest 99765a0d7f44 14 hours ago 355 MB
到此,关于“Docker 宿主机环境怎么搭建”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注丸趣 TV 网站,丸趣 TV 小编会继续努力为大家带来更多实用的文章!