你好,游客 登录 注册 搜索
背景:
阅读新闻

Docke镜像和仓库基础命令

[日期:2017-12-29] 来源:Linux社区  作者:Linux [字体: ]

Docke镜像和仓库基础命令

1 列出Docker主机上可用的镜像

sudo docker images

2 拉取Ubuntu镜像

sudo docker pull ubuntu:12.04

可能出现仓库无法响应的问题,使用国内的Docker仓库daocloud:

echo "DOCKER_OPTS=\"\$DOCKER_OPTS --registry-mirror=http://f2d6cb40.m.daocloud.io\"" | sudo tee -a /etc/default/docker

重启一下docker服务器

sudo service docker restart

3 运行一个带标签的docker镜像

sudo docker run --name container_name -i -t ubuntu:12.04 /bin/bash

4 查找docker镜像

sudo docker search image_name

返回以下信息:

  • 仓库名
  • 镜像描述
  • 用户评价(Stars)
  • 是否官方(Official)
  • 自动构建(Automated)

5 构造镜像的两种方式

  • 使用Docker commit命令。
  • 使用Docker build命令和Dockerfile文件。

登陆到Docker Hub:

sudo docker login

然后输入用户名(czzmm)和密码。

6 提交定制容器

sudo docker commit bd46737e3ad0 czzmm/demo01

其中,bd46737e3ad0可以是ID或者container_name,czzmm是Docker Hub用户名,demo01是新的镜像名。

sudo docker commit -m"A new custom image" -a"cz" cz czzmm/demo02:webserver

-m提交信息,-a作者信息,webserver是标签。

7 检查新创建的镜像

sudo docker images czzmm/demo01

8 查看提交镜像的详细信息

sudo docker inspect czzmm/demo02:webserver

9 从提交的镜像运行一个容器

sudo docker run -t -i czzmm/demo02:webserver /bin/bash

10 用Dockerfile文件构建镜像

不推荐使用docker commit命令来构建镜像,通过Dockerfile文件和docker build命令更具可重复性、透明性和幂等性。

新建一个目录,并在该目录下新建一个 Dockerfile 文件:

    FROM ubuntu:14.04
    MAINTAINER CZ "895092337@qq.com"
    RUN apt-get update -yqq && apt-get install -y nginu
    RUN echo ‘Hi, I am in your container’ > /usr/share/nginx/html/index.html
    EXPOSE 80

EXPOSE指定对外部公开的端口。
使用docker build命令构建镜像。

sudo docker build -t="czzmm/static_web" .

查看新的Docker镜像

sudo docker images czzmm/static_web

查看镜像是如何构建的:

sudo docker history czzmm/static_web

11 从新镜像启动一个容器

sudo docker run -d -p 80 --name static_web czzmm/static_web nginx -g "daemon off;"

-d:Docker以分离的方式在后台运行,这种方式非常适合运行类似Nginx守护进程这样需要长时间运行的进程。

-p:公开的的网络端口。

上面的命令中还指定了需要在容器中运行的命令:nginx -g “daemon off;”

绑定到特定的网络接口:

sudo docker run -d -p 127.0.0.1::80 --name static_web czzmm/static_web nginx -g "daemon off;"

查看容器的端口映射情况:

sudo docker port static_web 80

或者:

sudo docker ps -l

12 推送Docker镜像

sudo docker push czzmm/static_web

13 删除Docker镜像

sudo docker rmi czzmm/static_web

 

更多Docker相关教程见以下内容: 

Docker安装应用(CentOS 6.5_x64) http://www.linuxidc.com/Linux/2014-07/104595.htm 

Ubuntu 16.04 服务器上配置使用 Docker  http://www.linuxidc.com/Linux/2017-06/145176.htm 

Ubuntu 15.04下安装Docker  http://www.linuxidc.com/Linux/2015-07/120444.htm 

Docker 安装实例 http://www.linuxidc.com/Linux/2017-04/142666.htm 

Docker 创建基础镜像  http://www.linuxidc.com/Linux/2017-05/144112.htm 

在 Ubuntu 15.04 上如何安装Docker及基本用法 http://www.linuxidc.com/Linux/2015-09/122885.htm 

Ubuntu 16.04上Docker使用手记 http://www.linuxidc.com/Linux/2016-12/138490.htm 

使用Docker分分钟启动常用应用  http://www.linuxidc.com/Linux/2017-04/142649.htm 

Ubuntu 16.04下Docker修改配置文件不生效解决办法  http://www.linuxidc.com/Linux/2017-05/143862.htm 

Docker 的详细介绍请点这里
Docker 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-12/149951.htm

linux
相关资讯       Docke镜像  Docke仓库  Docke基础命令 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款