3.2 Docker的基本操作
一、Docker操作镜像
镜像名称一般分两部分组成:[repository]:[tag],比如:mysql:5.7
命令:
从本地构建镜像:docker build 前提:本地存在Dokerfile文件
拉取镜像:docker pull
查看本地已有镜像:docker images
删除镜像:dcker rmi
分享镜像:
推送到镜像服务器:docker push
镜像保存成压缩包:docker save
将压缩包还原成镜像:docker load
备注:可以通过 docker [内容] --help查看帮助文档
二、Dcoker操作容器
命令
创建容器:docker run
暂停容器:docker pause
从暂停恢复容器:docker unpause
停止容器:docker stop
从停止恢复容器:docker start
查看所有运行的容器:docker ps [-a] -a是看所有的容器
查看容器运行日志:docker logs
进入容器执行命令:docker exec
删除容器:docker rm
运行详述
比如:
docker run --name nginxName -p 80:80 nginx解释:
docker run:创建并运行一个容器
--name:给容器起一个名字,这里为nginxName
-p:将宿主机端口与容器端口进行映射,冒号左侧是宿主机端口,右侧是容器端口,容器端口基于服务而定,一般来说是固定的
-d:后台运行容器
nginx:镜像名字持续监控日志:
docker logs -f nginxName备注:对nginxName容器持续进行日志监控
进入容器,修改文件
进入容器:
docker exec -it nginxName bash解释:
docker exec:进入容器内部,执行一个命令
-it:给当前进入的容器创建一个标准输入、输出终端,允许我们与容器交互
nginxName:要进入的容器的名称
bash:进入容器后执行的命令,bash是一个linux终端交互命令退出容器:
exit
注意:这个操作是不建议的,因为以后会出问题
三、Docker操作数据卷
容器与数据耦合的问题
不便于修改
数据不可服用
升级维护困难
数据卷(volume)是一个虚拟目录,指向宿主机文件系统中的某个目录
宿主机文件系统存放位置:
/var/lib/docker/volume/每创建一个数据卷,都会在上面的目录下创建一个目录
操作命令
docker volume [COMMAND]备注:
docker volume是数据库按操作
[COMMAND]确定下一步操作[COMMAND]示例create:创建一个volume
inspect:显示一个或多个volume信息
ls:列出所有的volume
prune:删除未使用的volume
rm:删除一个或多个指定的volume
将数据卷挂载到容器中
我们创建容器时,可以通过
-v参数来挂载一个数据卷到某个容器目录举例:
docker run --name nginxName -v html:/root/html -p 80:80 nginx备注:
-v html:/root/htm:把html数据卷挂载到容器内的/root/html这个目录中 容器内的目录可以在DockerHub官网上查看
如果数据卷不存在,创建容器时候可以自动创建
宿主机目录直接挂载到容器中
语法:
-v [宿主机目录]:[容器内目录],-v [宿主机文件]:[容器内文件]备注:目录以及文件全部需要提前手动创建
最后更新于
这有帮助吗?