设为首页 收藏本站
云服务器等爆品抢先购,低至4.2元/月
查看: 676|回复: 0

[经验分享] docker容器

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-8-23 09:31:05 | 显示全部楼层 |阅读模式
1、创建容器命令
命令:docker create -it ubuntu:latest

root@docker-test:~# docker create -it ubuntu:latest

启动容器命令
docker start

查看容器命令
docker ps -a

2、新建并启动容器命令
主要命令:docker run  等价于先docker create 再执行docker start


3、下面的命令输出一个“hello world”, 之后容器自动终止
root@docker-test:~# docker run ubuntu /bin/echo "hello world"
hello world


4、当利用docker run命令来创建并启动容器时,docker在后台运行的标准操作包括:
1、检查本地是否存在指定的镜像,不存在就从公有仓库下载
2、利用镜像创建并启动一个容器
3、分配一个文件系统,并在只读的镜像层外面挂载一层可读写层
4、从宿主机配置的网桥接口中桥接一个虚拟接口到容器中去
5、从地址池配置一个IP地址给容器
6、执行用户指定的应用程序
7、执行完毕后容器被终止

5、启动并运行一个shell终端,允许用户和容器进行交互
root@docker-test:~# docker run -t -i ubuntu:latest /bin/bash

可以输入exit退出,或者ctrl+d
当退出后,该容器就自动处于终止状态,对于docker容器来说,当运行的应用(此处例子中为bash)退出后,容器也就没有继续运行的必要了


6、让容器在后台运行
下面的命令会在后台运行:
root@docker-test:~# docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
命令的作用是在跑一个while循环,输出hello world

查看运行的容器的信息
root@docker-test:~# docker ps -a

获取容器的输出信息:
root@docker-test:~# docker logs 339b05880d1c


7、终止docker容器
docker stop 339b05880d1c   (容器id)

查看处于终止状态的容器的信息:
root@docker-test:~# docker ps -a -q


处于终止状态的docker容器可以使用start命令启动


8、进入容器(进入容器内部进行操作:部署应用,配置IP地址,等等)
通过attach命令进入容器 (这个命令是docker自带的命令)
演示:
首先从ubuntu镜像创建并启动一个容器
root@docker-test:~# docker run -idt ubuntu
fcba62ef03efff495473d62d364baa311640b641dfe9494fe8069f3ff0e0cac4

root@docker-test:~# docker ps #查看
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
fcba62ef03ef        ubuntu:latest       "/bin/bash"         10 seconds ago      Up 10 seconds                           happy_elion         

root@docker-test:~# docker attach fcba62ef03ef   #通过attach命令进入容器
root@fcba62ef03ef:/#     #已经进入成功

注意:attach命令进入容器后,用exit命令退出后会导致容器也被终止运行并删除了


通过exec命令进入容器:
root@docker-test:~# docker run -idt ubuntu    #创建并启动一个容器(并且在后台运行,-t选项是给容器分配一个伪终端)
e601d1353222d662c48a143e5eb389f3f7ac4395318e3f76353fd4690b3aec81

root@docker-test:~# docker exec -ti e601d1353222 /bin/bash    #通过exec命令进入容器
root@e601d1353222:/#     #进入成功



9、删除容器
使用docker rm命令进行删除

docker rm -f [容器ID|容器名字]  -f参数是强行终止并删除一个运行中的容器
-l 参数 删除容器的连接,但保留容器
-v 参数 删除容器挂载的数据卷


10、导入和导出容器
1、导出
导出容器是指导出一个已经创建的容器到一个文件,
root@docker-test:~# docker export d529f11ed9b4 > test_ubuntu_export_file.tar

可将这些导出的容器文件传输到其他机器上,在其他机器上通过导入命令实现容器的迁移(其他容器需要有容器环境)

2、容器导入
root@docker-test:~# cat test_ubuntu_export_file.tar | docker import - test/ubuntu:v1.0

注意:导入的容器文件是会变成镜像,那么从这个镜像启动容器即可

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-403362-1-1.html 上篇帖子: docker镜像 下篇帖子: docker仓库
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表