Docker安装
安装必要的系统工具
yum install -y yum-utils device-mapper-persistent-data lvm2
添加docker-ce安装源:
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
配置阿里云Docker Yum源:
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新yum缓存:
yum makecache fast
yml.pid占用:
-- rm -f /var/run/yum.pid
安装docker-CE:
yum -y install docker-ce
启动docker容器
systemctl start docker
下载 mysql:5.7 镜像
docker pull mysql/mysql-server:5.7
下载 openjdk 镜像
docker pull openjdk
下载 nginx 镜像
docker pull nginx
查看docker镜像
docker images
定义自定义网络
docker network create --subnet=172.33.0.0/16 my_net
部署mysql容器
创建文件夹
mkdir -p mysql/{conf,data,script}
将my.cnf放到conf里面
将book.sql放到script
创建MySQL容器
javascriptdocker run -itd \ -v /root/soft/mysql/conf/my.cnf:/etc/my.cnf \ -v /root/soft/mysql/data:/var/lib/mysql \ -v /root/soft/mysql/script:/script \ --privileged=true \ -e MYSQL_ROOT_PASSWORD=123456 \ --name m1 \ --net my_net \ mysql/mysql-server:5.7
进入mysql容器
docker exec -it m1 bash
登录MySQL
mysql -uroot -p
创建远程登录的用户
grant all on *.* to root@'%' identified by '123456';
创建数据库
create database shop;
使用数据库
use shop;
执行数据库脚本
source /script/book.sql
自定义项目镜像
编写Dockerfile文件
vim Dockerfile
javascript
FROM openjdk:latest
WORKDIR /project
COPY spring.jar /project
CMD java -jar spring.jar --mysql.addr=m1
把jar包放到soft目录里面
构建镜像
docker build -t book:v1 .
运行三个容器
javascriptdocker run -itd \ --name b1 \ --net my_net \ book:v1
javascriptdocker run -itd \ --name b2 \ --net my_net \ book:v1
javascriptdocker run -itd \ --name b3 \ --net my_net \ -p 8080:8080 \ book:v1
访问端口
部署nginx容器,实现外部访问
新建nginx文件夹
mkdir -p nginx/{conf.d,html}
修改hosts文件
C:\Windows\System32\drivers\etc
将default.conf配置文件放到conf.d文件夹里面
将静态素材放html里面
部署nginx
javascriptdocker run -itd \ --name n1 \ -v /root/soft/nginx/conf.d:/etc/nginx/conf.d \ -v /root/soft/nginx/html:/etc/nginx/html \ -p 80:80 \ --net my_net \ nginx