彩虹小马 Docker容器日常操作敕令

发布日期:2024-12-21 04:26    点击次数:163

彩虹小马 Docker容器日常操作敕令

 彩虹小马

使用Docker已有一段本领了,今天偶合有空梳理下我方闲居操作Docker时的一些敕令和把稳细节:

Docker 敕令匡助

Docker option

Docker run辅导

Docker容器识别

天天天国产视频在线观看

把稳极少:当期骗 docker run 来创建容器时,Docker 在后台运行的模范操作包括:

                                                                                                                                        

列出现时整个正在运行的容器

检察容器的相关信息# docker inspect CONTAINER_ID

炫夸容器IP地址和端标语,若是输出是空的讲解莫得建立IP地址(不同的Docker容器不错通过此IP地址彼此拜访)# docker inspect --format='{{.NetworkSettings.IPAddress}}' CONTAINER_ID

保存对容器的修改 # docker commit -m "Added ssh from ubuntu14.04" -a "birdben" 6s56d43f627f3 birdben/ubuntu:v1参数:-m参数用来来指定提交的讲解信息;-a不错指定用户信息的;6s56d43f627f3代表的时容器的id;birdben/ubuntu:v1指定主义镜像的用户名、仓库名和 tag 信息。

实现docker容器日记文献的大小启动容器时,不错通过参数竖立日记文献的大小、日记文献的时势。# docker run -it --log-opt max-size=10m --log-opt max-file=3 centos

构建一个容器 # docker build -t="birdben/ubuntu:v1" .参数:-t为构建的镜像制定一个标签,便于挂牵/索引等. 指定Dockerfile文献在现时目次下,也不错替换为一个具体的 Dockerfile 的旅途。

在docker中运行ubuntu镜像# docker run <相关参数> <镜像 ID> <开动敕令>

看护模式启动# docker run -it ubuntu:14.04

交互模式启动# docker run -it ubuntu:14.04 /bin/bash

指定端标语启动# docker run -p 80:80 birdben/ubuntu:v1

指定建立启动# sudo docker run -d -p 10.211.55.4:9999:22 birdben/ubuntu:v1 '/usr/sbin/sshd' -D

参数:-d:示意以“看护模式”施行,日记不会出面前输出末端上。-i:示意以“交互模式”运行容器,-i 则让容器的模范输入保执大开-t:示意容器启动后会干预其敕令行,-t 选项让Docker分拨一个伪末端(pseudo-tty)并绑定到容器的模范输入上-v:示意需要将腹地哪个目次挂载到容器中,时势:-v <宿主机目次>:<容器目次>,-v 象征来创建一个数据卷并挂载到容器里。在一次 run 中屡次使用不错挂载多个数据卷。-p:示意宿主机与容器的端口映射,此时将容器里面的 22 端口映射为宿主机的 9999 端口,这么就向外界流露了 9999 端口,可通过 Docker 网桥来拜访容器里面的 22 端口了。把稳:这里使用的是宿主机的 IP 地址:10.211.55.4,与对外流露的端标语 9999,它映射容器里面的端标语 22。ssh外部需要拜访:ssh root@10.211.55.4 -p 9999不一定要使用“镜像 ID”,也不错使用“仓库名:标签名”

字据镜像启动容器的时候,若是镜像的TAG是latest,那么就平直跟镜像名就行了;若是TAG不是latest,那么镜像后头要跟上这个TAG标志。如下:

docker运行一个容器必须是基于镜像来进行的,一朝容器启动了,咱们就不错登录到容器中,装配我方所需的软件或应用才略。启动容器的敕令中必须跟一个镜像,启动容器后施行的敕令必须放在镜像后头,如下,/bin/bash必须放在镜像称号的后头:

把稳:创建应用容器时,一般作念端口映射,为了让外部大约拜访这些容器里的应用。不错通过-P或-p参数来指定端口映射

start 启动容器(多个容器,后头就跟多个容器id)# docker start 117843ade696117843ade696

stop 住手正在运行的容器(多个容器,后头就跟多个容器id)(在容器里面按ctrl+d组合键,也会退出现时容器)# docker stop 117843ade696117843ade696

restart 重启容器(多个容器,后头就跟多个容器id)# docker restart 117843ade696117843ade696

删除容器和镜像

登录Docker Hub中心# docker login

发布上传image(push)# docker push birdben/ubuntu:v1

Docker本机和容器之间的文献拷贝:

镜像的存出和载入(不错将本机下载的镜像导出,然后将导出文献上传到别的机器上,在别的机器上进行镜像导入)

容器的导出和导入(不错依据导出的容器快照导入为镜像,在腹地或将容器快照文献上传到别的机器上进行导入镜像操作齐不错)

比如说我在A机器上有个nginx容器,面前要在B机器上启动一个一模不异的nginx容器(或者说将A机器上的nginx容器拿到B机器上),法子有底下两种:

在运作事态中的容器内再次启动新的进度(docker exec)

-----------------------------------------------------------------------------------------------------------一般来说,容器创建后的主机名齐是就地生成的一串字符。DNS亦然默许和宿主机不异的(/etc/resolv.conf)容器创建后,登陆容器是无法修改主机名或DNS建立的,会报错说:需要root权限才调修改!其实容器的主机名或DNS建立是不错在容器创建的时候手动指定的:

Docker容器登陆的法子:具体参考:Docker容器学习梳理--容器登陆法子梳理(attach、exec、nsenter)

检察docker中对应容器的IP

docker inspect 敕令:炫夸更底层的容器或image信息(docker inspect images_id/container_id 检察镜像或容器信息)

格外把稳一个细节:

---------------------------------------------------无法删除气象为Dead的容器---------------------------------------------------docker中有两个status为dead的容器,删除时报错如下:Error response from daemon: Driver devicemapper failed to remove root filesystem 33ddd2513fc3cb732fa02e912be1927929d8d028abefa945d8a3984d700a4d74: Device is Busy

处罚见识:1)看容器进度是否仍是杀掉。莫得的话,不错手动杀死。2)mount -l看是不是该容器的旅途还在挂载气象。是的话,umount掉。3)然后再次尝试docker rm container_id尽量不要手动去移除dm和docker里面container的相关文献,以免变成垃圾数据。4)尝试docker rm -f <container-id>,强制删除这么不错删裁撤docker daemon中的container信息(然则仍是创建的dm照旧ACTIVE的,是以还要再去把dm给删除了)

---------------------------------------------------容器启动失败放纵1---------------------------------------------------

---------------------------------------------------容器启动失败放纵2---------------------------------------------------

---------------------------------------------------容器yum弗成使用--------------------------------------------------

==============对于docker容器和镜像以及文献的几个转动关系==============

-------------------------------------基于centos7的docker容器出现的一个bug--------------------------------------彩虹小马





Powered by 成濑心美快播 @2013-2022 RSS地图 HTML地图

Copyright Powered by站群 © 2013-2024