(二)docker=>容器篇container

2.容器
ps 显示docker容器列表
docker ps -a 显示所有运行过的容器,包括已经不运行的
create
docker create [参数命令] 依赖镜像 [容器内命令] [命令参数]
参数命令:
-t --tty 伪TTY,虚拟终端
-i --interactive 即使没有链接,也保持STDIN打开
–name 为容器起名,没有指定将随机
容器内命令:容器启动后在容器中执行的命令,如:ps,ls等
命令擦书:如-a -r 等
docker create -it --name ubuntu-1 ubuntu ls -a
启动容器的三种方式
1、启动待启动或已关闭容器
2、基于镜像新建一个容器并启动
3、守护进程方式启动docker
start启动容器:
将一个或多个处于创建状态或关闭状态的容器启动起来
docker start [容器名称]或[容器ID]
#命令参数(OPTIONS):
-a, --attach 将当前shell的 STDOUT/STDERR 连接到容器上
-i, --interactive 将当前shell的 STDIN连接到容器上
#启动上面创建的容器
docker start -a ubuntu-1
run创建新容器并启动
利用镜像创建并启动一个容器
docker run [命令参数] [镜像名称][执行的命令]
命令参数(OPTIONS):
-t, --tty 分配一个伪TTY,也就是分配虚拟终端
-i, --interactive 即使没有连接,也要保持STDIN打开
–name 为容器起名,如果没有指定将会随机产生一个名称
-d, --detach 在后台运行容器并打印出容器ID
–rm 当容器退出运行后,自动删除容器
#启动一个镜像输出内容并删除容器
$ docker run --rm --name nginx1 nginx /bin/echo “hello docker”
#注意:
docker run 其实 是两个命令的集合体 docker create + docker start
run -d守护进程方式启动容器<常用的方式>
docker run -d [image_name] command …
守护进程方式启动容器:
docker run -d nginx
pause unpause restart容器暂停、取消暂停、重启
暂停一个或多个处于运行状态的容器
docker pause 容器名称或ID
取消一个或多个处于暂停状态的容器,恢复运行
docker unpause 名称或ID
重启一个或多个处于运行、暂停、关闭或新建状态的容器
docker restart 名称或ID
-t --time 重启前,等待的时间,秒(默认10s)
stop 关闭容器
关闭一个或多个处于暂停或运行状态的容器
docker stop 名称或ID
kill 终止容器
强制立即关闭一个或多个处于暂停或运行状态的容器
docker kill 名称或ID
删除容器三种方法:
a正常删除 删除已关闭的
docker rm 名称或ID
b强制删除 删除运行的
docker rm -f 名称或ID
c强制批量删除 删除全部
docker rm -f ( d o c k e r p s − a − q ) 按 照 执 行 顺 序 (docker ps -a -q) 按照执行顺序 (dockerpsaq)(), 获取到现在容器的id然后进行删除
进入和退出容器三种方法
a创建容器的同时进入容器
docker run --name 定义容器名 -it image名 /bin/bash
docker run -it --name nginx-test nginx /bin/bash
b手工方式进入容器
docker exec -it 容器id /bin/bash
c生产方式进入容器
使用如下脚本

#!/bin/bash

#定义进入仓库函数
docker_in(){
NAME_ID= 1 P I D = 1 PID= 1PID=(docker inspect --format {{.State.Pid}} $NAME_ID)
nsenter --target $PID --mount --uts --ipc --net --pid
}
docker_in $1
(记得添加执行权限)
测试demo:
$ ./test.sh 容器名称或ID
退出容器:
1.exit
2.ctrl+D
基于容器创建镜像
方式一
docker commit -m ‘改动信息’ -a ‘作者信息’ 容器id 新容器名称
docker commit -m ‘添加了文件’ -a ‘by zxm’ d74fff341687 nginx:v0.2
方式二
创建镜像
docker export 容器id > 文件路径
导入镜像:
cat nginx.tar | docker import - testname
导出(EXPORT)导入(IMPORT)与保存(SAVE)加载(LOAD)的区别
import与load的区别:import可以重新指定镜像的名字,docker load不可以
export 与 保存 save 的区别:1、export导出的镜像文件大小,小于 save保存的镜像。2、export 导出(import导入)是根据容器拿到的镜像,再导入时会丢失镜像所有的历史。

查看容器运行日志
docker logs [容器id]
docker logs 7c5a24a68f96
查看容器详细信息
docker inspect [容器id]
查看容器全部信息:
docker inspect 930f29ccdf8a​
查看容器端口信息
docker port [容器id]
docker port 930f29ccdf8a
没有效果没有和宿主机关联
容器重命名
修改容器的名称
docker rename [容器id]或[容器名称] [容器新名称]
docker rename 930f29ccdf8a u1

总结

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值