`
VIP庚
  • 浏览: 223891 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Docker 你所需要知道的事 ~ ---- Docker 实用技能与镜像分享(二)

 
阅读更多
    Docker安装完成后就是要部署自己所需要的镜像,镜像来源一般在:https://hub.docker.com   docker hub上有各种牛人已经部署好环境和服务的镜像,我们直接下载下来就可以使用了,有些镜像可能不满足我们的需要,这时候就可以基于该镜像定制一份满足自己需求的镜像(镜像制作后面会写)

镜像安装:
   docker pull <镜像地址>
   遇到 net/http: TLS handshake timeout 问题 可以通过国内代理下载
   docker pull registry.docker-cn.com/library/xxx

启动容器
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-p: 端口映射,格式为:主机(宿主)端口:容器端口
--name="nginx-lb": 为容器指定一个名称;
-e username="ritchie": 设置环境变量;
--link=[]: 添加链接到另一个容器;
-d: 后台运行容器,并返回容器ID

后续有对不同的容器启动进行介绍

基本操作命令
显示所有镜像信息: docker images    
删除镜像: docker rmi <镜像id>    
重命名镜像: docker tag <镜像id> <新镜像名称>    
查看镜像配置信息: docker inspect <镜像id>                      

查看所有容器信息: docker ps -a                                         
删除容器: docker rm <容器id>                             
查看容器log: docker logs <容器id>                          
重命名容器: docker rename <原容器名>  <新容器名>  
进入容器终端: docker attach <容器名称>  

用root 权限进入容器(很重要)  docker exec -u 0 -ti <容器名称> bash 


容器移植
容器的移植步骤
1、提交当前容器 生成镜像
docker commit <容器id> <生成镜像名称>
docker commit 2b9eea4bb1ff android_images

2、打包镜像 生成tar文件
docker save <镜像名称> > <打包生成的名称>
docker save android_images > android_images.tar

3、导入镜像
docker load < <镜像包地址>
docker load < android_images.tar

4、生成容器
docker run android_images.tar


修改无法启动的容器
当我们对容器内部的数据进行操作后再重启,发现启动失败,这时候我们可能需要进入容器中对数据进行修正,但是
docker exec -u 0 -ti <容器名称> bash
这条命令必须是在容器启动的时候才能进入。
1、commit 有问题的容器 
docker commit <容器id> <生成镜像名称>

2、基于新镜像启动新容器 并进入容器(运行交互式容器)
docker run -i -t <新镜像名称> /bin/bash     

3、对容器中错误的地方进行修改
4、重新commit 当前容器
5、基于新镜像启动容器  注意启动时需要在命令最后加上 command
docker run -i -t <镜像名称> /bin/bash ./home/start.sh


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics