Docker常用命令总结

前两天学习了下docker总结了一点常用命令,来做下分享。

systemctl status docker   //查看docker状态
sudo systemctl start docker    //启动docker
systemctl stop docker       //停止docker
systemctl restart docker    //重启docker
docker version         //查看docker版本
docker --help           //查看帮助
docker run --help           //查看run的命令帮助



##########镜像操作###########
docker images        //列出docker镜像
	{ 
	REPOSITORY(镜像所在仓库)    TAG(版本)     IMAGE ID(镜像id)     CREATED(镜像创建日期)  SIZE(大小)
	}
docker pull centos //默认拉取最新  docker pull centos:version  可指定版本
sudo systemctl daemon-reload      //重新加载docker配置
docker search tomcat      //查看仓库中tomcat 镜像存不存在
docker rmi 镜像id/镜像名称 镜像id/镜像名称			//删除一个或多个镜像(删除的不是仓库的、本地的)
docker rm  容器id/容器名称 容器id/容器名称      	  //删除一个或多个容器(不能删除正在运行的容器)

docker rm `docker ps -a -q`                   //删除所有非运行的容器(并返回容器id)
docker logs c2  							//查看容器日志


############容器操作###########
docker run -it --name c2 centos /bin/bash   //1.创建一个交互式容器(创建完成后创建了终端并且进入容器终端)(centos系统的容器--暂且这么理解)

docker run -itd --name t2 -p 8888:8080 mytomcat /bin/bash   -p 参数可指定端口号
	{
	-i:交互式容器
	-t:tty终端分配一个终端操作容器
	--name 指定容器的name 唯一
	-d   表示后台启动
	}
	
exit                              //退出创建的容器
docker ps                        //查看正在运行容器(在宿主机上)
docker ps -a   					 //查看运行过的容器(历史)
docker ps -l 					//查看最后一次运行的容器

docker run -itd --name c4 centos /bin/bash     //2.创建一个name为c3的守护式容器(创建完成后不进入容器终端控制台)
docker exec -it c4 /bin/bash                   //进入守护式容器终端
exit                                           //推出后容器仍然运行

docker stop c4									//停止正在运行的容器c4
docker start c2									//启动已经停止的容器c2
docker restart c2									//重启容器c2

docker network ls                   //查看docker的网络
docker network inspect bridge		//查看使用bridge网络的容器
docker inspect 容器名称								//查看正在运行的容器的详细信息
docker inspect -f='{{.NetworkSettings.IPAddress}}' c2   		//查看正在运行的容器c2的ip地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' c2



########拷贝文件命令##########
docker cp 1.txt c1:/root               //将宿主机本文件下的1.txt文件拷贝到docker容器中的root目录下(文件的目录必须是绝对路劲)
docker cp c1:/root/2.txt /tmp/feng/    //将容器c1中root目录下的2.txt文件拷贝到,宿主机的tmp/feng目录下
 
###########宿主机和容器文件的映射############
docker run -itd --name c2 -v /opt:/usr/local/myhtml  centos /bin/bash        //创建一个守护式容器 并将宿主机的opt目录和容器的usr/local/myhtml映射

##################docker镜像制作的两种方式####################
source /etc/profile							//临时跟新此文件
tar -zxvf jdk-8u161-linux-i586.tar.gz -C /usr/local/             //解压文件到指定目录
docker commit mycentos mytomcat         //指定mycentos为新的镜像到本地
docker run -itd --name t2 -p 8888:8080 mytomcat /bin/bash  //用新创建的镜像创建一个容器
docker exec	 t2 /usr/local/tomcat/bin/starup.sh     //不登录容器直接启动tomcat

#######################1.镜像打包/容器打包##########################
docker save -o /root/tomcat.tar mytomcat       // 其中/root/tomcat.tar 指定打包的存储位置,mytomcat 是所打包的镜像
将打包好的镜像放到指定服务器#######导入镜像
docker load -i /root.tomcat.tar


2.容器打包############################
docker export -o /roott2.tar t2
导入指定服务器
docker import t2.tar mytomcat:last

#####################2.通过Dockerfile创建docker镜像#################
1.创建文件夹存储Dickerfile文件
2.编写dockerfile文件
3.创建镜像docker build -t rw_nginx --rm=true .
4.docker images //查看本地镜像

####################向docker仓库推送镜像###############
(1.docker hub)
命令
1.docker tag local-image:tagname new-repo:tagname
2.docker push new-repo:tagname
例子:
docker tag hello-world:latest xbf392/test-hello-world:v1  //把叫hello-world tag=latest的镜像 重新命名为xbf392/test-hello-world(此为docker仓库名)   tag=v1
(登陆docker:docker login)(xbf392 Fxb..1222)
docker push xbf392/test-hello-world:v1
(2.阿里云镜像仓库)
//阿里云操作指南
https://cr.console.aliyun.com/repository/cn-beijing/fxb_hub/fxb_hub_01/details

###########docker swarm集群######
docker swarm init --advertise-addr ip(填写具体ip)   //将此ip作为docker swarm的管理节点
docker node ls  //查看集群节点信息
docker swarm join --token (填写token) 192.168.200.138:2377   //将运行此命令的机器加入集群
docker service create --replices 1 --name helloworld alpine ping docker.com    //创建服务
docker service ls   查看dockerswarm集群中的服务列表
docker service inspect 服务名称      //查看部署服务的详细信息
docker service ps 服务名称    //查看服务在集群节点上的分配(运行在哪个节点上)
docker service scale helloworld=5   //更改服务副本的数量(创建副本会分配在不同的节点上)
docker service rm 服务名称      //删除一个服务
docker network ls      //产看集群环境下的网络
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

像夏天一样热

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值