设为首页 收藏本站
查看: 1276|回复: 0

[经验分享] Docker 简单入门教学

[复制链接]

尚未签到

发表于 2019-2-20 11:05:23 | 显示全部楼层 |阅读模式
  这篇主要讲现在主流的容器技术Docker,觉得不学习下都跟不上节奏了哈。
这里简单介绍docker的安装以及使用,有问题欢迎指出哈。
  这里主要讲以下几点:


  • Docker 创建仓库
  • Docker 安装
  • Docker 镜像创建
  • Docker  制作镜像
  • Docker 上传镜像
  • Dockerfile
    Docker 创建仓库
      1.注册dockerhub账号,并新建仓库,地址:https://hub.docker.com/。



Docker 安装
  1.这里以ubuntu环境为例子
方式1:

  wget -qO- https://get.docker.com/ | sh

  方式2:

  apt-get install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
apt-get update
//安装最新版本的docker
apt-get install -y docker-ce

  2.查看版本

  docker version



Docker 拉取镜像
  1.首先我们下载一个ubuntu镜像

  docker pull ubuntu:16.04




  • 运行镜像

  docker run -t -i -p 3000:3000 ubuntu:16.04 /bin/bash


  -i 显示info级别log信息
-t 显示控制台
-p 3000:3000 把容器的3000端口映射到本机3000端口

  3 .查看容器

  //查看运行容器
docker ps
//查看所有容器
docker ps -a


  其中,正常exit会关闭容器退出,可以按Ctrl+P+Q暂时退出容器,但是不关闭容器。
也可以使用  docker exec -ti  启动一个伪终端以交互式的方式进入某个容器
(使用exit退出后容器不停止运行)
  4.启动容器

  docker start  


  5.进入容器

  docker attach  


  6,.停止容器

  docker stop  


  由于拉取的ubuntu是个比较纯净的,所以需要apt-get update,然后安装各种命令。
apt-get update
apt-get install vim
apt-get install net-tools     # ifconfig
apt-get install iputils-ping  # ping
...
  容器本身就被分配独立的IP,比如这里被分配的172.17.0.6。

  我们可以在宿主机直接访问docker容器的内部Web服务了。


Docker 制作镜像
  1.退出容器

  docker stop

  2.查看容器

  docker ps -a

  3.把容器打成镜像

  docker commit   [:]


  4.查看镜像

  docker images



Docker 上传镜像
  1.登录

  docker login


  2.上传镜像

  docker push [:]


  此时在Docker仓库 搜索onebig32/zhao,就会看到我刚刚上传的镜像了
再次使用该镜像就可以直接docker pull onebig32/zhao:0.1 来使用了。

DockerFile
  当然部署还是需要DockerFile,有点像makefile,部署一步到位。
使用如下:
  1.编写Dockerfile文件

FROM onebig32/zhao:0.1
# 基于镜像 ,拉取镜像,比如我刚才上传的镜像onebig32/zhao:0.1
MAINTAINER Aze
# 作者信息
RUN git clone https://github.com/onebig32/swoole.git \
&& cd ./swoole
# RUN 执行命令
WORKDIR ./swoole
# 设定初始目录
EXPOSE 3000
# 暴露3000端口
CMD go build .
# 运行 go build .命令,只会执行一条cmd命令
  2.build该Dockerfile为一个镜像:

  docker build --rm --no-cache=true -t docker-test .



  • -t 设定镜像名字 docker-test
  • --rm 如果已存在docker-testt镜像,则删除docker-test镜像
  • --no-cache=true build时,禁止缓存

  3.运行镜像即可:

  docker run -i -t -p 3000:3000 -d docker-test /bin/bash



参考文章
  1.安装docker: https://yeasy.gitbooks.io/docker_practice/install/ubuntu.html
2.docker教学:https://www.jianshu.com/p/81291d66740f
3.docker手册:https://yeasy.gitbooks.io/docker_practice/




运维网声明 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-674817-1-1.html 上篇帖子: Docker核心技术理解(一) 下篇帖子: Docker私有仓库Harbor v1.6.1安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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