docker常用命令

1 添加并运行

docker run -d image-name

2 获取上次运行的container id

last_id=$(docker ps -l -q)

3 列出全部

docker ps -a

4 停止

docker stop container-id

5 启动

docker start container-id

6 彻底删除

docker rm -f container-id

7 获取容器的ip地址

docker inspect --format='{{.NetworkSettings.IPAddress}}' container-name

8 build(假设本目录下有DockerFile)

docker build -t image-name .

9 登录docker hub

docker login
# 然后要输入已经注册的用户名和密码

10 tag 一个镜像(到docker-hub)

docker tag local-image-name docker-hub-user/docker-hub-repostory:tag-name

11 push镜像(到docker-hub)

docker push docker-hub-user/docker-hub-repoistory:tag-name

12 docker push 通过socks5代理

HTTP_PROXY=socks5://localhost:proxy_port docker ...

13 交互模式运行docker容器

docker run -it --name hehe alpine

运行好后会进入容器的命令行,如果Ctrl+Q回到主机,Ctrl+D或者exit推出到主机。

14 后台模式运行docker容器

docker run -d --name hehe alpine

注意命令结束后(默认是/bin/sh),容器会自动停止

15 自动保活的后台容器

docker run -d alpine tail -f /dev/null

之后想再执行命令行的话可以

docker exec container-id cmd

16 切换为国内镜像

vim /etc/docker/daemon.json

{
    "registry-mirrors": [ "https://registry.docker-cn.com"]
}

然后要执行

sudo systemctl daemon-reload
sudo systemctl restart docker

其他镜像

  • https://docker.mirrors.ustc.edu.cn
  • http://hub-mirror.c.163.com
  • dockerhub.azk8s.cn

17 启动一个docker container的sh

docker exec -i -t <container_name> /bin/sh

18 删除所有的container(包含停止的)

docker rm -f $(docker ps -a -q)

19 删除所有本地没有在使用的镜像

docker images -q |xargs docker rmi

20 更新本地镜像

docker pull xxx/xxx
# 然后重启即可

21 查看容器资源占用

docker stats --no-stream
CONTAINER           CPU %               MEM USAGE / LIMIT       MEM %               NET I/O               BLOCK I/O           PIDS
e0dc81d9e0b8        0.01%               200.1 MiB / 995.4 MiB   20.11%              304.4 kB / 35.17 kB   103 MB / 532.5 kB   0

 

 

 

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *