一、docker操作
1、安装docker依赖环境
yum install -y yum-utils device-mapper-persistent-data lvm2
2、配置镜像源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3、安装docker
yum makecache fast
yum -y install docker-ce docker-ce-cli containerd.io
4、启动docker 开机自启
systemctl start docker
systemctl enable docker
二、镜像操作
1、拉取镜像
docker pull
2、查看本地镜像
docker images
3、删除本地镜像
docker rmi 镜像标识
4、导出镜像
docker save -o 导出路径 镜像id
5、加载本地镜像
docker load -i 镜像文件
6、修改镜像名称
docker tag 镜像id 新镜像名称:版本
7、后台开启镜像
docker run -d -p 8000:8080 --name tomcat e7
-d:后台运行容器
-p:端口 linux访问端口:容器端口
–name:容器名称
e7:容器id
三、容器操作
1、查看全部运行的容器
docker ps [-qa]
2、进入容器内部
docker exec -it b bash
b:容器id
退出:exit
3、停止指定容器
docker stop 容器id
4、停止全部容器
docker stop $(docker ps -qa)
5、删除指定容器
docker rm 容器id
6、启动容器
docker start 容器id
7、将项目放入Tomcat容器中
docker cp ssm.war fe:/usr/local/tomcat/webapps/
fe:容器id
四、数据卷操作
1、创建数据卷
docker volume create 数据卷名称
默认路径 /var/lib/docker/volumes/数据卷名称/data
2、查看数据卷的详细信息
docker volume inspect 数据卷名称
3、查看全部数据卷
docker volume ls
4、删除数据卷
docker volume rm 数据卷名称
5、应用数据卷
当映射数据卷是,如果数据卷不存在,docker会自动创建,会将容器内部自带的文件存储
docker run -v 数据卷名称:容器内部路径 镜像id
指定路径作为数据卷的存放位置
docker run -v 路径:容器内部的路径 镜像id
五、自定义镜像
1、创建Dockerfile文件
指定自定义镜像信息(右键新建txt文件,命名Dockerfile,去掉txt后缀)
dockerfile文件中常用的内容
from 指定当前自定义镜像依赖的环境
copy 将相对路径下的内容复制到自定义镜像中
workdir 声明镜像的默认工作目录
cmd 需要执行的命令(在workdir下执行的cmd可以写多个,只以最后一个为准)
2、制作自定义镜像
将准备好的Dockerfile和相应的文件放到linux中,通过命令制作镜像
docker build -t 镜像名称:[tag] .
六、Docker-Compose
1、下载Docker-Compose
- 去github官网搜索docker-compose下载
- 修改文件名称并将其改为可执行文件
- chomd 777 docker-compose
- 方便后期操作,配置环境变量
- 将docker-compose文件移动到 /usr/local/bin,修改了/etc/profile文件,给/usr/local/bin配置到了PATH中
mv docker-compose /usr/local/bin
vi /etc/profile
export PATH=$JAVA_HOME:**/usr/local/bin**:$PATH
source /etc/profile
- 在任意目录下输入 docker-compose
2、Docker-Compose管理容器
yml文件编写信息,不要使用制表符
version: '3.1'
services:
mysql:
restart: always #只要docker启动,那么容器一起跟着启动
images: daocloud.io/library/mysql:8.0.2 #指定镜像路径
ports:
- 3306:3306 #指定端口号映射
environment:
MYSQL_ROOT_PASSWORD: root
TZ: Asia/Shanghai #指定时区
volumes:
- /opt/docker_mysql/data:/var/lib/mysql #映射数据卷
tomcat:
#配置同上
3、Docker-Compose命令
1,启动管理的容器
docker-compose up -d
2.关闭并删除容器
docker-compose down
3.开启 关闭 重启已经存在的docker-compose维护的容器
docker-compose start|stop|restart
4.查看docker-compose管理的容器
docker-compose ps
5.查看日志
docker-compose logs -f
七、Docker-compose 配合Dockerfile管理自定义镜像
1、dokcer-compose.yml
#yml 文件
version: '3.1'
services:
ssm:
restart: always
build: #构建自定义镜像
context: ../ #指定dockerfile文件所在路径
dockerfile: Dockerfile #指定Dockerfile文件名称
image: ssm:1.1
container_name: ssm
ports:
- 8080:8080
environment:
TZ: Asia/Shanghai
2、Dockerfile文件
from 镜像地址
copy ssm.war /usr/local/tomcat/webapps
3、命令
docker-compose up -d
#如果自定义镜像不存在,会帮助我们构建自定义镜像,如果存在,直接运行。若要重新构建:
docker-compose build
#运行时重新构建
docker-compose up -d -build