===============================================
2018/2/3_第1次修改 ccb_warlock
===============================================
为了适应当前容器化的部署方式,故最近也在对docker进行学习。目前的理解是docker服务就像一艘货船,而你的各项服务可以封装在一个个集装箱里,而且在docker里服务的启动非常快,故有必要从基础的部署内容开始整理。
这次整理的是docker、shipyard的部署。docker是容器的基础服务,而shipyard是查看容器的界面服务(也是运行在docker上的容器服务)。
一、准备工作
1.1 环境配置
名称 | 内容 |
操作系统 | centos7(CentOS-7-x86_64-Minimal-1708) |
CPU | 1核 |
内存 | 4G |
1.2 卸载旧版本
(新安装的centos7.4并没有这些包,所以执行也是提示找不到这些包)
老版本的Docker被称为docker或docker-engine。如果安装了这些,请卸载它们以及相关的依赖项。
yum remove -y docker docker-common docker-selinux docker-engine
1.3 安装vim、wget
yum install -y wget vim
二、部署docker ce
2.1 安装yum-utils、device-mapper-persistent-data、lvm2
yum install -y yum-utils device-mapper-persistent-data lvm2
2.2 添加yum源配置
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2.3 (可选)启用边缘和测试存储库
这些存储库包含在docker.repo上面的文件中,但默认情况下是禁用的。您可以将它们与稳定的存储库一起启用。
# 启动边缘存储库 yum-config-manager --enable docker-ce-edge # 禁用边缘存储库 yum-config-manager --disable docker-ce-edge # 启动测试存储库 yum-config-manager --enable docker-ce-test # 禁用测试存储库 yum-config-manager --disable docker-ce-test
2.4 安装docker
# 安装最新的docker
yum install docker-ce -y
(在试验的时候我们通常是安装最新版本,可以用上面的命令直接安装,但是在部署到生产环境时经常要求安装制定版本的docker。)
# 列出可用的docker版本
yum list docker-ce --showduplicates |sort -r
其中有3列信息,第1列:软件包名称
第2列:版本字符串
第3列:仓库名称
# 安装指定版本的docker
yum install -y docker-ce-<版本号>
例如:
yum install -y docker-ce-17.3.1
2.5 启动docker
# 启动
systemctl start docker
# 开机启动
systemctl enable docker
2.6 开放2375端口
firewall-cmd --zone=public --permanent --add-port=2375/tcp
firewall-cmd --reload
2.7 试验安装是否成功
docker run hello-world
2.8 查看docker版本
docker version
2.9 设置镜像加速器
墙的缘故,访问docker hub不够稳定,故需要设置镜像加速器来解决这个问题。
这里使用的是阿里云的镜像加速器。
登录阿里云后,访问https://cr.console.aliyun.com/#/accelerator
(registry-mirrors的值必须带https:// (阿里云的教程中只有域名),否则会出现docker重启报错的情况。)
三、部署shipyard
3.1 下载镜像
docker pull dockerclub/shipyard
3.2 修改安装脚本安装中文镜像
# 下载官方一键部署脚本
wget https://shipyard-project.com/deploy
# 替换Controller为中文版
sed -i ‘s/shipyard\/shipyard:latest/dockerclub\/shipyard:latest/g‘ deploy
3.3 修改端口(可选)
# 删除(可能你已经安装好了,想换个端口,先要删除,修改配置文件后再安装)
cat deploy | ACTION=remove bash
shipyard默认端口8080,如果8080有其他用途,则需要修改端口。假设需要加端口改为6000端口。
# 修改文件deploy
vim /root/deploy
修改下面的内容,wq保存。
SHIPYARD_PORT=${PORT:-6000}
3.4 安装
sh deploy
由于我并没有修改端口,故部署完后shipyard的页面是8080
3.5 登录
我服务搭在192.168.12.20,端口是默认配置,故访问http://192.168.12.20:8080
账号/密码输入admin/shipyard,点击“登陆”。
参考资料:
1. https://docs.docker.com/engine/installation/linux/docker-ce/centos/#prerequisites
2. https://www.cnblogs.com/cainiaoit/p/6543326.html
3. 《spring cloud与Docker 微服务架构实战》