docker容器常用命令

docker 容器常用命令

有镜像才能创建容器

docker pull centos

docker pull ubuntu
新建+启动容器
docker run [OPTIONS] IMAGES [COMMAND][ARG]

OPTIONS说明(常用):
    有一些是减号,有一些是两个减号
    --name=“容器新名字”  为容器指定一个名称
    -d: 后台运行容器并返回容器id,也即启动守护进程(后台运行)
    -i: 以交互模式运行容器,通常与-t同时使用;
    -t:为容器重新分配一个伪输入终端,通常与-i使用;
    也即启动交互式容器(前台有为终端,等待交互);
    -P:随机端口映射,大写P
    -p:指定端口映射,小写p
    
启动交互式命令:docker run -it ubuntu /bin/bash
    -i:交互操作
    -t:终端
    centos:centos镜像
    /bin/bash:放在镜像名后的是命令,这里我们希望有个交互shell,因此用的/bin/bash
    退出终端,直接输入exit
查看当前所有正在运行的容器
docker ps[OPTIONS]

OPTIONS说明(常用):
	-a:列出当前所有正在运行的容器+历史上运行过的
    -l:显示最近创建的容器
    -n:显示最近n个才创建的容器
    -q:静默模式,只显示容器编号
退出容器
两种退出方式:
	1.exit:run进去容器,exit退出,容器停止
	2.ctrl+p+q:run进去容器,ctrl+p+q退出容器不停止
启动已停止运行的容器
docker start 容器id或容器名
重启容器
docker restart 容器id或容器名
停止容器
docker stop 容器id或容器名
强制停止容器
docker kill 容器id或容器名
删除已停止的容器
docker rm 容器id

一次性删除多个:
	1.docker rm -f $(docker ps -a -q) 不要用
	2.docker ps -a -q|xargs docker rm
启动守护式容器(后台服务器)
docker run -d
运行:docker run -d contos
然后:docker ps -a 进行查看,发现容器已经退出
重点说明:docker容器后台运行,就必须有一个前台进程
容器运行的命令如果不是那些一直挂起的命令(比如运行top,tail),就是会自动退出
解决方案:将运行的程序以前台进程的形式进行,常见就是命令模式,表示我还有交互操作,不中断

redis示例:
	前台交互式启动:docker run -it redis:6.0.8
	后台守护式启动: docker run -d redis:6.0.8
查看容器日志
docker logs 容器id
查看容器内运行的进程
docker ps 容器id
查看容器内部细节
docker inspect 容器id
进入正在运行的容器并以命令交互
docker exec -it 容器 ID /bin/bash

重新进入:docker attach 容器ID

上述两个区别:
    1.attach直接进入容器启动命令的终端,不会启动新的进程,用exit退出,会导致容器的停止 
    2.exec是在容器中打开新的终端,并且客户启动新的进程,用exit退出,不会导致容器停止

推荐使用docker exec ,因为退出容易,不会停止容器运行

redis实例,测试:
    进入redis服务
    docker exec -it 容器ID /bin/bash
    docker exec -it 容器ID redis-cli
    一般用-d后台启动的程序,再用exec进入对应的实例
从容器内拷贝文件到主机上
容器->主机
docker cp 容器ID:容器内路径 目的主机路径
公式:docker cp 容器ID:容器内路径 目的主机路径
导入和导出容器
export 导出容器的内容留作为一个tar归档文件[对应import命令]
import 从tar包的内容创建一个新文件系统再导入镜像[对应export]

例:
	docker export 容器ID>文件名.tar
	cat 文件名.tar|docker import - 镜像用户/镜像名:镜像版本号
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值