docker 基础(二)

常见命令

Docker最常见的命令就是操作镜像、容器的命令,详见官方文档:https://docs.docker.com/

数据卷

命令 说明 文档地址
docker volume create 创建数据卷 docker volume create
docker volume ls 创建数据卷 docker volume ls
docker volume rm 查看所有数据卷 docker volume rm
docker volume inspect 查看某个数据卷的详情 docker volume inspect
docker volume prune 清除数据卷 docker volume prune
  • 在执行docker run命令时,使用 -v 本地目录:容器内目录 可以完成本地目录挂载。
  • 本地目录必须以'/'或'./'开头,如果直接以名称开头,会被识别为数据卷而非本地目录。
  • -v mysql:/var/lib/mysql 会被识别为一个数据卷叫做mysql。
  • -v ./mysql: /var/lib/mysql 会被识别为当前目录下的mysql目录。

自定义镜像

Dockerfile就是一个文本文件,其中包含一个个的指令(Instruction),用指令来说明要执行什么操作来构建镜像。将来Docker可以根据Dockerfile帮我们构建镜像。常见指令如下:

指令 说明 示例
FROM 指定基础镜像 FROM centos:6
ENV 设置环境变量,可在后面指令使用 ENV key value
COPY 拷贝本地文件到镜像的指定目录 COPY ./jre1l.tar.gz /tmp
RUN 执行Linux的shell命令,一般是安装过程的命令 RUN tar -zxvf /tmp/ire1l.tar.gz&& EXPORTS path=/tmp/jre1l:$path
EXPOSE 指定容器运行时监听的端口,是给镜像使用者看的 EXPOSE 8080
ENTRYPOINT 镜像中应用的启动命令,容器运行时调用 ENTRYPOINT java -jar xx.jar

更加详细的语法说明,请参考官方文档:https://docs.docker.com/engine/reference/builder

docker build -t myImage:1.0 .

  • -t 是给镜像起名,格式依然是repository:tag 的格式,不指定tag时,默认是latest
  • .:是指定Dockerfile所在目录,如果就在当前目录,则指定为 "."。

网络

默认情况下,所有容器都是以bridge当时连接到docker的一个虚拟网桥上。

加入自定义网络的容器才可以通过容器名互相访问,Docker的网络操作命令如下:

命令 说明 文档地址
docker network create 创建一个网络 docker network create
docker network ls 查看所有网络 docker network ls
docker network rm 删除指定网络 docker network rm
docker network prune 清除未使用的网络 docker network prune
docker network connect 使指定容器连接加入某网络 docker network connect
docker network disconnect 使指定容器连接离开某网络 docker network disconnect
docker network inspect 查看网络详细信息 docker network inspect
相关推荐
名字还没想好☜24 分钟前
Docker 网络实战:bridge/host/none/自定义网络、容器互通与端口映射踩坑
运维·docker·kubernetes
March.s2 小时前
Docker 容器与网络深度指南:从入门到精通
docker
探索云原生3 小时前
KubeClipper 1.7.0 发布:Operation 优化与 Kubernetes 1.37 支持
linux·docker·云原生·kubernetes·go
fengkai45454 小时前
八、Docker详解1-3
运维·docker·容器
一技安身5 小时前
【信创】银河麒麟V10(ARM64,无GPU纯CPU)内网隔离离线部署Deepseek+openWebUI完整方案
docker
AI视觉网奇6 小时前
docker 迁移
docker
程序员老赵6 小时前
Docker 部署填鸭表单完整教程:搭建私有化问卷与表单收集平台
前端·docker·开源
MrSYJ7 小时前
Veth pair 细讲
docker·云原生·容器
普通人67 小时前
win系统docker运行
windows·docker
秦jh_7 小时前
【Docker】容器
运维·docker·容器