Docker容器的基本操作命令

1.镜像的启动、停止、查询状态

systemctl start docker
systemctl stop docker
systemctl status docker
mac系统把systemctl替换成launchctl

2.镜像搜索查询、拉取

docker search XXX
docker pull [仓库名称][:版本号]//不加版本号默认拉最新的,即:xxx:latest
docker images  //查询已经拉取的容器
docker ps //查询已经安装并且正在运行的容器
docker ps -a //查询所有容器

3.创建容器并且自定义名称

docker create -p 80:80 -it --name mynginx nginx[:版本号]//不加版本号默认根据最新版本的创建
//创建一个nginx容器,将宿主机的80端口和容器的80端口绑定映射,自定义容器名称
//这里p是小p,意思是自主指定端口号,如果填大写P则是系统随机分配

//验证:打开web浏览器输入localhost:80 弹出nginx欢迎界面即正确
  1. 启动容器
docker start myubuntu  //根据容器名称启动
docker start 99273785fb5f41a4a3d126d001f5b4eb9c6508df2dd136  //根据创建时生成的id启动

5.进入、退出容器

//第一种:用 exec 进入

//(1) 用 it 参数进入容器,会分配一个tty终端在前台可以持续交互,需要手动exit退出容器
docker exec -it myubuntu /bin/bash  //根据容器名称进入
docker exec -it 99273785fb5f4136 /bin/bash //根据容器id进入


// (2) 用 d 参数进入,和用it参数不同的是,d表示在后台运行,如果一个命令要执行很长时间,
//避免卡住一直等待选这种方式,执行完后自动exit退出容器
docker exec -d myubuntu /bin/bash /test.sh


exit //退出容器


//第二种 :用 attach 进入

docker attach myubuntu
//与exec参数不同的是,用attach参数进入容器不会创建新的tty终端,而是进入当前终端
//并且要注意的是,当exit退出终端后,容器会自动stop关闭

6.停止容器

docker stop myubuntu
docker stop  99273785fb5f41a4a3d126d001f5b4eb9c6508df2dd136

7.销毁容器

docker rm -f mybuntu

8.将容器保存为镜像

docker commit 容器名or容器id 保存的镜像名称

9.删除镜像(删除镜像前要先删除根据它创建的容器)

docker rmi 镜像id

//如果一个image id对应了多个镜像的话,删除指定某个镜像:
docker rmi 仓库名称:镜像id

10.推送阿里云的个人镜像仓库

//登录(直接从官网复制阿里云的命令,密码是登录账号的密码)
docker login --username=XXXXX registry.cn-hangzhou.aliyuncs.com 
//指定要推送的镜像id版本号,输入的时候要把中括号 “[]” 去掉
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]
//推送到仓库
docker push registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]
//从仓库拉取
docker pull registry.cn-hangzhou.aliyuncs.com/命名空间/仓库名称:[镜像版本号]

run命令:
相当于create+start,默认进入容器.首先会在本地找镜像,没找到则从hub中pull最新的镜像
测试:

docker run --name myubuntu -it -d ubuntu //-d:不进入容器并且返回容器id,不加-d则会进入容器

猜你喜欢

转载自blog.csdn.net/weixin_48251552/article/details/126987270