一、Docker 常用配置(文档 6)
1. 安装与卸载
-
安装 :卸载旧版 → 安装
yum-utils→ 设置阿里云镜像仓库 → 安装docker-ce等 → 启动并验证。 -
卸载 :
yum remove相关包,删除/var/lib/docker。
2. 镜像管理
-
删除 :
docker rmi(单个/多个/全部)。 -
保存/加载 :
docker save导出.tar,docker load/docker import导入。 -
标签与提交 :
docker tag打标签,docker commit将容器保存为新镜像。
3. 容器基本操作
-
运行 :
-it交互式,-d后台(需有前台进程),-p端口映射,--name命名。 -
退出 :
Ctrl+P+Q后台退出,exit终止。 -
查看/启停/删除 :
docker ps -a,start/stop/restart/kill,rm -f。 -
日志与进程 :
docker logs -tf --tail N,docker top,docker inspect。 -
进入容器 :
docker exec -it(新终端,推荐),docker attach(进入原终端)。 -
文件拷贝 :
docker cp 容器:路径 主机路径。
4. 数据卷(Volume)
-
作用:持久化数据,宿主机与容器目录双向绑定。
-
挂载类型 :指定目录挂载、匿名挂载(
-v 容器内路径)、具名挂载(-v 卷名:容器内路径)。 -
权限 :
:ro(只读)、:rw(读写,默认)。 -
数据卷容器 :
--volumes-from实现容器间共享卷,删除一个容器不影响其他容器。
5. Dockerfile 常用指令
-
FROM、MAINTAINER、RUN、ADD/COPY、WORKDIR、ENV、EXPOSE、CMD/ENTRYPOINT、VOLUME、ONBUILD。 -
构建 :
docker build -f Dockerfile -t 镜像名:标签 . -
CMD vs ENTRYPOINT:CMD 可被覆盖,ENTRYPOINT 可追加命令。
6. Docker 网络
-
默认网络 :
docker0桥接,使用veth-pair技术,容器间通过 IP 互通,通过容器名需--link。 -
自定义网络 :
docker network create --driver bridge --subnet 网段 --gateway 网关 网络名,支持容器名自动解析,更安全。 -
网络连通 :
docker network connect 网络名 容器名可将容器加入多个网络。
7. 常见中间件部署示例
-
MySQL :挂载 conf 和 data 目录,设置
MYSQL_ROOT_PASSWORD。 -
Elasticsearch :通过
-e ES_JAVA_OPTS限制内存。 -
Tomcat/Nginx :挂载 webapps 或 html 目录,支持
:ro只读。
8. 可视化工具 Portainer
- 命令:
docker run -d -p 8088:9000 --restart=always -v /var/run/docker.sock:/var/run/docker.sock --privileged=true portainer/portainer