关于docker的一些命令

制作镜像(docker build)

# 确保当前目录下有Dockerfile,注意最后的点 .
>>>docker build -m "message" -a "author" -t="imagename:tag" .

获取docker容器的ip(docker inspect)

# 开启新的终端,查看正在运行的容器
>>>docker ps -l
# 查看输出结果,找到对应容器的CONTAINER ID

# 查看容器的ip
>>>docker inspect --format '{{ .NetworkSettings.IPAddress }}' CONTAINER ID

保存对镜像的修改(docker commit)

在对镜像进行修改之后,默认是不保存的,如果需要保存,需要使用docker commit命令

>>>docker commit -m "message" -a "author" CONTAINER ID imagename:tag

删除容器(docker rm)

注意区分容器与镜像之间的区别

# 删除容器
>>>docker rm CONTAINER ID
# 清理所有处于终止状态的容器
>>>docker rm $(docker ps -a -q)

删除镜像(docker rmi)

  1. 要确保此镜像没有开启容器

  2. 要确保此镜像不是作为本地其他镜像的依赖

>>>docker rmi IMAGE ID

修改镜像信息(docker tag)

# 修改镜像名,修改之后默认标签为latest
>>>docker tag IMAGE ID NEW-REPOSITORY

# 修改镜像标签
>>>docker tag IMAGE ID NEW-REPOSITORY:TAG

推送镜像到DockerHub(docker push)

前提:用dockerhub账号

DockerHub地址

以用户名为xxx栗子

# 登陆Dockerhub,输入账号密码
>>>docker login

# 确保要上传的镜像名称形如xxx/IMAGE NAME
# 可使用docker tag命令进行更改
>>>docker push xxx/IMAGE NAME

# 稍作等待,之后便可以到DockerHub上查看是否推送成功

网络配置问题

在安装完docker并启动之后,主机上会创建一个虚拟的网桥服务,形如172.17.x.x

在运行docker的时候,与主机或者容器间的网络配置,可利用–net参数进行更改

有以下几种模式,默认为bridge模式

–net=bridge|none|container:NAME_or_ID|host

举个栗子:

>>>docker run -it --net=host IMAGE NAME:TAG /bin/bash

# --net=host表示启动host模式,与主机共享ip

端口映射问题。使用-p或者-P解决,格式如下:

# 指定ip:主机端口:容器端口
- ip:hostport:containerport   

# 指定ip::容器端口
- ip::containerport       

# 主机端口:容器端口
- hostport:containerport

# 映射所有端口
- -P

这个命令具体用途体现在,当容器端口只开放如8080端口时,但是宿主机8080端口又被占用,此时可使用此方式改变映射端口。

举个栗子:

# command表示需要执行的命令
>>>docker run -p 5000:8080 -d IMAGE NAME:TAG command
# 此命令就可以成功的将容器8080端口映射到宿主机的5000端口之上,访问宿主机的5000端口即可
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值