docker 常用命令


docker 常用命令

 

 

**************************

镜像相关命令

 

搜索镜像:docker search image

下载镜像:docker pull image

删除镜像:docker rmi image_name/image_id

删除所有镜像:docker rmi $(docker images -q)

 

查看本地所有镜像:docker images

查看镜像详细信息:docker inspect image_id

查看镜像构建历史:docker history image_id

 

根据容器创建镜像:docker commit  [options]  container image_name:tag

[root@centos ~]# docker commit --help

Usage:	docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]

Create a new image from a container's changes

Options:
  -a, --author string    Author (e.g., "John Hannibal Smith <hannibal@a-team.com>")
  -c, --change list      Apply Dockerfile instruction to the created image
  -m, --message string   Commit message
  -p, --pause            Pause container during commit (default true)

-a:作者信息

-c:使用dockerfile指令创建镜像

-m:说明信息

-p:提交镜像期间荣旗停止

#创建容器redis
[root@centos ~]# docker run -it -d --name redis redis
6ba0d8883cbd9c2935ebd8c0175f32d127ed6e5de5c3a33e3d791a74b2b38a7f


#指定工作目录:/usr
[root@centos ~]# docker commit -c "workdir /usr" redis myredis
sha256:6f722e468c3ae2094c073f8be29e06c357c513c68b608e07eb7a6e7b59dd7b22


#指定工作目录:/usr、环境变量:hello ==> world
[root@centos ~]# docker commit -c "workdir /usr" -c "env hello world" redis myredis
sha256:074771378679245de22dac93b3d68eb1f986e425f73f108d7262ac5f9beb6816

 

 

根据模板文件生成镜像:docker import file - image:tag

 

将镜像转为文件本地文件存储:docker save -o file image_name

将本地文件转为镜像:docker load --input file、docker load < file 

 

给镜像打标签:docker tag image_name new_image_name

上传镜像:docker push image_name

 

 

**************************

容器相关命令

 

创建容器:docker run,常用启动参数:

-i:打开标准输入

-t:分配一个伪终端

-d:在后台运行容器

--net:指定容器网络模式

--ip:指定容器的ip地址

-w:指定容器的工作目录

-e:指定容器内的环境变量

-m:限制容器使用的内存

-v:容器挂载数据卷

--name:指定容器的名称

 

启动容器:docker start container_id

进入容器:docker exec -it container_id bash

停止容器:docker stop container_id

重启容器:docker restart container_id

删除容器:docker rm container_id

删除所有容器:docker rm $(docker ps -qa)

 

查看存活容器:docker ps

查看所有容器:docker ps -a

查看容器日志:docker logs container_id

查看容器详细信息:docker inspect container_id

 

将容器转换为本地文件存储:docker export -o file container_id

将文件转换为镜像文件:docker import file - image_name

 

 

**************************

network:网络

 

相关命令

[root@centos ~]# docker network --help

Usage:	docker network COMMAND

Manage networks

Commands:
  connect     Connect a container to a network
  create      Create a network
  disconnect  Disconnect a container from a network
  inspect     Display detailed information on one or more networks
  ls          List networks
  prune       Remove all unused networks
  rm          Remove one or more networks

Run 'docker network COMMAND --help' for more information on a command.

connect:将容器连接到网络上

create:创建网络

disconnect:断开容器网络连接

inspect:查看网络详细信息

ls:列出所有网络

prune:清理所有未使用的网络

rm:删除网络

 

***********************

创建网络

 

命令格式:docker networkc create [options] network

[root@centos ~]# docker network create --help

Usage:	docker network create [OPTIONS] NETWORK

Create a network

Options:
      --attachable           Enable manual container attachment
      --aux-address map      Auxiliary IPv4 or IPv6 addresses used by Network driver (default map[])
      --config-from string   The network from which copying the configuration
      --config-only          Create a configuration only network
  -d, --driver string        Driver to manage the Network (default "bridge")
      --gateway strings      IPv4 or IPv6 Gateway for the master subnet
      --ingress              Create swarm routing-mesh network
      --internal             Restrict external access to the network
      --ip-range strings     Allocate container ip from a sub-range
      --ipam-driver string   IP Address Management Driver (default "default")
      --ipam-opt map         Set IPAM driver specific options (default map[])
      --ipv6                 Enable IPv6 networking
      --label list           Set metadata on a network
  -o, --opt map              Set driver specific options (default map[])
      --scope string         Control the network's scope
      --subnet strings       Subnet in CIDR format that represents a network segment

-d:设置网络驱动,默认为bridge

-subnet:设置网络使用的网段,如 172.18.0.0/24

 

示例

[root@centos ~]# docker network create --subnet 172.20.0.0/24 fixed4  //创建网络
4c72f8af78ef0af6b324da73cd6c9efcddfe969e48127579e01c085b06823216

[root@centos ~]# docker network ls                                    //列出网络
NETWORK ID          NAME                DRIVER              SCOPE
4c72f8af78ef        fixed4              bridge              local

[root@centos ~]# docker inspect fixed4                                //查看网络详情
[
    {
        "Name": "fixed4",
        "Id": "4c72f8af78ef0af6b324da73cd6c9efcddfe969e48127579e01c085b06823216",
        "Created": "2020-10-09T09:38:20.447745533+08:00",
        "Scope": "local",
        "Driver": "bridge",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": {},
            "Config": [
                {
                    "Subnet": "172.20.0.0/24"
                }
            ]
        },
        "Internal": false,
        "Attachable": false,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {},
        "Options": {},
        "Labels": {}
    }
]

[root@centos ~]# docker network rm fixed4                             //删除网络
fixed4

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值