开发必备技术--docker(一)
阿里云国内75折 回扣 微信号:monov8 |
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6 |
前言
docker是我们开发过程中进行项目环境部署开发上线的时候经常使用到的一个实用工具。不管是什么项目也好我们肯定是必不可少的。尤其是现在和卷王比拼的时代Java的开发标准都上SpringCloud去了都上微服务了那么docker必然是需要掌握的。
OK废话不多说咱们开始了这个也是好久之前压库存的玩意儿了每次我是来清理库存的这几天WhiteHole得快点推进一下了先做好其他的后面再说。
OK我们先从安装开始好吧
Docker 分为 CE 和 EE 两大版本。CE 即社区版免费支持周期 7 个月EE 即企业版强调安全付费使用支持周期 24 个月。
Docker CE 分为 stable
test
和 nightly
三个更新频道。
官方网站上有各种环境下的 安装指南这里主要介绍 Docker CE 在 CentOS上的安装。
Docker CE 支持 64 位版本 CentOS 7并且要求内核版本不低于 3.10 CentOS 7 满足最低内核的要求而且我们大部分选择的服务器都是CentOS ,所以我们这边的指令都是按照CentOS来的。
旧版本卸载
OK我们先来卸载一下旧版本如果你的PC上面有的话你可以选择卸载一下不然没必要
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
docker-ce
安装
先安装一下工具
yum install -y yum-utils \
device-mapper-persistent-data \
lvm2 --skip-broken
然后更新本地镜像源
# 设置docker镜像源
yum-config-manager \
--add-repo \
https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repo
yum makecache fast
然后输入命令
yum install -y docker-ce
docker-ce为社区免费版本。稍等片刻docker即可安装成功。
启动docker
启动docker前先关一下防火墙或者开放一下对应需要使用的端口。我们这边先直接关一下
# 关闭
systemctl stop firewalld
# 禁止开机启动防火墙
systemctl disable firewalld
通过命令启动docker
systemctl start docker # 启动docker服务
systemctl stop docker # 停止docker服务
systemctl restart docker # 重启docker服务
然后输入命令可以查看docker版本
docker -v
如果查看成功的话那么就说明正常了。这里在推荐一下finalShell作为Shell工具。
DockerCompose
这个东西呢就是一个可以一次性帮助我们创建多个docker镜像的玩意。可以编写脚本的玩意当然编写一个shell脚本其实也可以的。
用这个安装即可
curl -L https://github.com/docker/compose/releases/download/1.23.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
然后改一下文件权限
chmod +x /usr/local/bin/docker-compose
当然还有一个命令补齐的好东西
curl -L https://raw.githubusercontent.com/docker/compose/1.29.1/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose
镜像仓库搭建
这个的话自己看着办目前我们应该是用不上。但是还是说一下吧。
无界面版本
Docker官方的Docker Registry是一个基础版本的Docker镜像仓库具备仓库管理的完整功能不过没有图形化界面。
docker run -d \
--restart=always \
--name registry \
-p 6000:6000 \
-v registry-data:/var/lib/registry \
registry
命令中挂载了一个数据卷registry-data到容器内的/var/lib/registry 目录这是私有镜像库存放数据的目录。
访问http://yourhost:6000/v2/_catalog 可以查看当前私有镜像服务中包含的镜像
有界面版本
OK那么我们再来一下这个有界面的怎么玩
我们可以直接使用docker-compose来玩那么就用这个
version: '3.0'
services:
registry:
image: registry
volumes:
- ./registry-data:/var/lib/registry
ui:
image: joxit/docker-registry-ui:static
ports:
- 8080:80
environment:
- REGISTRY_TITLE=WhiteHole
- REGISTRY_URL=http://registry:6000
depends_on:
- registry
当然直接使用docker其实也可以。但是docker-compose不能白装是吧。
之后的话我们配置一下信任地址
# 打开要修改的文件
vi /etc/docker/daemon.json
# 添加内容
"insecure-registries":["http://192.168.150.101:8080"]
# 重加载
systemctl daemon-reload
# 重启docker
systemctl restart docker