docket常用命令

本文介绍了Docker的基本概念,如其作为轻量级应用容器框架的作用,以及为何选择使用Docker。详细讲解了Docker的安装步骤,并列举了一系列常用的Docker命令,包括搜索、下载、管理镜像,创建、启动、停止、删除容器,以及查看容器日志、调整容器配置等操作。此外,还提到了如何在宿主机与容器间同步时间、挂载文件系统以及创建网络等高级用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Docker是什么?
开源软件部署方案,轻量级应用容器框架,可以打包发布任何,运行,任何应用。

为什么要用Docket?
docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows机器上。使用Docker可以更方便低打包、测试以及部署应用程序。

Docker 环境安装
安装yum-utils:yum install -y yum-utils device-mapper-persistent-data lvm2
为yum源添加docker仓库位置:yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker: yum install docker-ce
开机自启:chkconfig docker on 或者 systemctl enable docker
启动docker: systemctl start docker
搜索镜像docker search java
下载镜像docker pull java:8
镜像支持的版本docker pull nginx:1.17.0
列出镜像docker images
删除镜像(-f:强制删除)docker rmi -f java:8
删除所有没有引用的镜像docker rmi docker images | grep none | awk '{print $3}'
强制删除所有镜像docker rmi -f $(docker images)

新建并启动容器docker run -p 80:80 --name nginx -d nginx:1.17.0
-d选项:表示后台运行
–name选项:指定运行后容器的名字为nginx,之后可以通过名字来操作容器
-p选项:指定端口映射,格式为:hostPort:containerPort

列出容器 docker ps
列出所有容器docker ps -a
停止容器docker stop ContainerName(或者ContainerName(或者ContainerName(ContainerId)

强制停止容器docker kill ContainerName(或者ContainerName(或者ContainerName(ContainerId)
启动已停止的容器docker start ContainerName(或者ContainerName(或者ContainerName(ContainerId)

进入容器docker inspect --format “{{.State.Pid}}” ContainerName(或者ContainerName(或者ContainerName(ContainerId)
根据容器的pid进入容器:nsenter --target “$pid” --mount --uts --ipc --net --pid

删除容器:docker rm ContainerName(或者ContainerName(或者ContainerName(ContainerId)
强制删除所有容器:docker rm -f $(docker ps -a -q)

查看当前全部日志:docker logs ContainerName(或者ContainerName(或者ContainerName(ContainerId)
动态查看日志:docker logs ContainerName(或者ContainerName(或者ContainerName(ContainerId) -f
查看容器的IP地址:docker inspect --format ‘{{ .NetworkSettings.IPAddress }}’ ContainerName(或者ContainerName(或者ContainerName(ContainerId)
修改容器的启动方式docker container update --restart=always $ContainerName
同步宿主机时间到容器docker cp /etc/localtime ContainerName(或者ContainerName(或者ContainerName(ContainerId):/etc/

指定容器时区
docker run -p 80:80 --name nginx
-e TZ=“Asia/Shanghai”
-d nginx:1.17.0

在宿主机查看docker使用cpu、内存、网络、io情况

查看指定容器情况:
docker stats ContainerName(或者ContainerName(或者ContainerName(ContainerId)
docker stats -a
docker system df

进入Docker容器内部的bash : docker exec -it $ContainerName /bin/bash
使用root帐号进入Docker容器内部 docker exec -it --user root $ContainerName /bin/bash
Docker创建外部网络docker network create -d bridge my-bridge-network
修改Docker镜像的存放位置docker info | grep “Docker Root Dir”
关闭Docker服务systemctl stop docker


docker nginx

第一种

docker pull nginx
docker run --name nginx -p 80:80 -d nginx
docker exec -it nginx bash
cd /etc/nginx/
vim nginx.conf 发现没有vim-> apt-get update 完成之后 apt-get install vim
停止docker stop nginx 然后重启 docker start nginx

第二种
docker run --name nginx -p 80:80 -v /home/docker-nginx/nginx.conf:/etc/nginx/nginx.conf -v /home/docker-nginx/log:/var/log/nginx -v /home/docker-nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf -d nginx
–name 给你启动的容器起个名字,以后可以使用这个名字启动或者停止容器

-p 映射端口,将docker宿主机的80端口和容器的80端口进行绑定

-v 挂载文件用的,第一个-v 表示将你本地的nginx.conf覆盖你要起启动的容器的nginx.conf文件,第二个表示将日志文件进行挂载,就是把nginx服务器的日志写到你docker宿主机的/home/docker-nginx/log/下面

第三个-v 表示的和第一个-v意思一样的。

-d 表示启动的是哪个镜像

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值