一、操作系统准备:centos7.8
二、docker环境准备:参考:Install Docker Engine on CentOS | Docker Documentation
(1)卸载之前版本
sudoyum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine
(2)安装docker仓库及工具
sudoyum install -y yum-utilssudoyum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
如速度慢可切换国内的镜像,比如阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台
(3)安装docker引擎
sudoyuminstalldocker-cedocker-ce-clicontainerd.io
(4)启动docker
sudosystemctl start docker
可通过docker version查看版本。
三、docker compose准备工作,参考:Install Docker Compose | Docker Documentation
docker compose实现对docker容器的编排,能实现多容器的快速部署。
(1)下载最新的docker compose
sudo curl -L"https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)"-o /usr/local/bin/docker-compose
(2)文件授权
sudochmod+x/usr/local/bin/docker-compose
可通过docker-compose –version查看版本。
四、镜像构建 使用dockerfile进行构建,镜像中不同的地方应该写在这里,这样才能区别官方的镜像。
(1)redis镜像构建
# 基础镜像FROMredis# authorMAINTAINERhaoyu# 挂载目录VOLUME/home/haoyu/redis# 创建目录RUNmkdir -p /home/haoyu/redis# 指定路径WORKDIR/home/haoyu/redis# 复制conf文件到路径COPY./conf/redis.conf /home/haoyu/redis/redis.conf
(2)mysql镜像构建
# 基础镜像FROMmysql:5.7# authorMAINTAINERhaoyu# 执行sql脚本ADD./db/*.sql /docker-entrypoint-initdb.d/
(3)nginx镜像构建
# 基础镜像FROMnginx# authorMAINTAINERhaoyu# 挂载目录VOLUME/home/haoyu/projects/haoyu-ui# 创建目录RUNmkdir -p /home/haoyu/projects/haoyu-ui# 指定路径WORKDIR/home/haoyu/projects/haoyu-ui# 复制conf文件到路径COPY./conf/nginx.conf /etc/nginx/nginx.conf# 复制html文件到路径COPY./html/dist /home/haoyu/projects/haoyu-ui
(4)后台程序构建
# 基础镜像FROMjava:8# authorMAINTAINERhaoyu# 挂载目录VOLUME/home/haoyu# 创建目录RUNmkdir -p /home/haoyu# 指定路径WORKDIR/home/haoyu# 复制jar文件到路径COPY./jar/*.jar /home/haoyu/haoyu.jar# 启动应用ENTRYPOINT["java","-jar","haoyu.jar"]
五、docker compose 编排
类如:
version :'3'services:haoyu-mysql:container_name: haoyu-mysqlimage:mysql:5.7build:context: .dockerfile: mysql-dockerfileports: -"3306:3306"volumes: - ./mysql/conf:/etc/mysql/conf.d - ./mysql/logs:/logs - ./mysql/data:/var/lib/mysql
注意:
数据库mysql地址需要修改成haoyu-mysql
缓存redis地址需要修改成haoyu-redis
六、构建docker服务
docker-compose build
七、启动docker容器
docker-compose up -d
如以上正常,即可看到界面。