Docker技术入门与实战(数据卷、端口映射、Dockerfil
1、数据卷的作用
image.png
查看数据卷
docker volume ls
docker volume inspect xxx
清理无用、删除
docker volume prune
docker volume rm xx
创建/var/lib/docker/volumes
docker volume create -d local test
挂载数据卷
docker run -d -name centos7 -v /webapp:/opt/webapp centos /bin/bash
docker run -d -name centos7 -v /webapp:/opt/webapp:ro centos /bin/bash
多个-v,挂载多个数据卷
数据卷容器,容器间数据共享
docker run -it -v /dbdata:/dbdata --name dbdata centos
docker run -it --volumes-from dbdata --name db1 centos
docker run -it --volumes-from dbdata --name db2 centos
备份和恢复数据卷
image.png2、端口映射
-P 大写的P会随机映射一个49000-49900端口到内部容器开放的网络端口
-p ip:80:80 -p 80:80
docker port xxx #查看端口映射
3、容器互联(不用端口映射)
docker run -itd --name db mysql /bin/bash
docker run -itd -P --name web --link db:db nginx:latest /bin/bash
查看连接信息
docker run -itd -P --name web --link db:db nginx:latest env
or
cat /etc/hosts
//docker容器间通信的两种方式:端口映射、容器互联--link db:db
4、Dockerfile
ARG 定义创建过程中指定的变量
FROM 基础镜像
ENV 环境变量
VOLUME 挂载点
USER
WORKDIR
SHELL 默认shell
RUN 运行指定命令
CMD 启动容器时执行的命令
ADD 添加内容到镜像
COPY 复制内容到镜像
image.png
image.png
image.png
image.png
image.png
image.png