Docker与Docker Compose安装
一.安装Docker
1.1.安装yum源管理工具
yum install -y yum-utils lvm21.2.设置一个下载Docker的镜像源(国内)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#添加阿里云镜像源1.3.安装Docker
yum makecache fast && yum install -y docker-ce
#更新yum仓库缓存 && 安装最新版本docker
1.4.启动docker
systemctl restart docker && systemctl enable docker1.5.测试hello-world
docker run hello-world二、Docker的中央仓库
2.1官方仓库
Docker:https://hub.docker.com/
2.2国内仓库
DaoCloud:http://hub.daocloud.io/
2.3本地私服
修改配置文件:/etc/docker/daemon.json(如果没有则创建)
{
"registry-mirrors":["https://registry.docker-cn.com"],
"insecure-registries":["ip:port"]
}
systemctl daemon-reload
systemctl restart docker2.4 配置阿里云镜像仓库
修改配置文件:/etc/docker/daemon.json(如果没有则创建)
{
"registry-mirrors": ["https://lsu57d0u.mirror.aliyuncs.com"]
}三、Docker-Compose
2.1 Docker-Compose的特点
1 运行一个镜像,需要大量的参数。
2 可以通过Docker-Compose编写这些参数。
3 Docker-Compose可以帮助我们批量管理容器
4 只需要通过一个docker-compose.yml文件去维护即可
2.2下载Docker-Compose
在github官网搜索下载。
https://github.com/docker/compose/releases
直接下载指定版本
https://github.com/docker/compose/releases/download/1.26.1/docker-compose-Linux-x86_642.3 将docker-compose文件可执行权限
chmod u+x docker-compose2.4 配置到环境变量
export PATH=/usr/local/bin:$PATH
#将/usr/local/bin目录加入到环境变量,然后将docker-compose置于此目录内。2.5 Docker-Compose管理
#yml文件key:value方式来指定配置信息
#多个配置信息以换行+缩进的方式来区分
#在docker-compose.yml文件中,不要使用制表符。
version: "3.1"
serivce:
Mysql #服务的名称。
restart: always #只要docker启动,那么这个容器就跟着一起启动。
image: daocloud.io/library/mysql:5.7.4 #指定镜像路径
container_name: mysql #指定容器名称
ports:
- 3306:3306 #指定端口号的映射。
environment:
MYSQL_ROOT_PASSWORD: root #指定mysql的root用户密码
TZ: Asia/Shanghai #指定时区
volumes:
- /opt/docker_mysql_tomcat/mysql_data:/var/lib/mysql #映射数据卷
tomcat:
restart: always #只要docker启动,那么这个容器就跟着一起启动。
image: daocloud.io/library/tomcat:8.5.15-jre8 #指定镜像路径
container_name: tomcat #指定容器名称
ports:
- 8080:8080 #指定端口号的映射。
environment:
TZ: Asia/Shanghai #指定时区
volumes:
- /opt/docker_mysql_tomcat/tomcat_webapps:/usr/local/tomcat/wabapps
- /opt/docker_mysql_tomcat/tomcat_logs:/usr/local/tomcat/logs
2.6 使用docker-compose命令管理容器
在使用docker-compose命令时,默认会在当前目录下找docker-compose.yml文件
2.6.1 基于docker-compose.yml启动管理的容器
docker-compose up -d2.6.2 关闭并删除容器
docker-compose down2.6.3 开启已经存在的由docker-compose维护的容器
docker-compose start|stop|restart2.6.4 查看由docker-compose管理的容器
docker-compose ps -a2.6.5 查看日志
docker-compose logs -f2.7 docker-compose配合Dockerfile使用
使用docker-compose.yml文件以及Dockerfile文件在生成自定义镜像的同时启动当前镜像,并且由docker-compose去管理容器
#yml文件
version: '3.1'
service:
ssm:
restart: always
bulid:
context: ../ #指定Dockerfile文件所在路径
dockerfile: Dockerfile #指定Dockerfile文件名称
image: ssm:1.0.1
container_name: ssm
ports:
- 8080:8080
environment:
TZ:Asia/Shanghai#Dockerfile
from daocloud.io/library/tomcat:8.0.23
copy ssm.war/usr/local/tomcat/webapps可以直接启动基于docker-compose.yml以及Dockerfile文件构建兹定义镜像
docker-compose up -d
如果镜像不存在,会帮助我们构建出自定义镜像,如果自定义镜像已经存在,会直接运行这个自定义镜像.
重新构建自定义镜像
docker-compse bulid
运行前,重新构建
docker-compose up -d --bulid三、docker安装脚本
cat << EOF > docker-ce.sh
yum install -y yum-utils lvm2
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
yum makecache fast && yum install -y docker-ce
systemctl restart docker && systemctl enable docker
EOF
chmod +x docker-ce.sh
./docker-ce.sh