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

[经验分享] Docker学习笔记1

[复制链接]

尚未签到

发表于 2019-2-21 11:45:03 | 显示全部楼层 |阅读模式
  Docker安装略
  运行环境centos7
  

  先创建一个本地的目录
  
  [root@localhost /]# mkdir nginx && cd nginx
  

  下载示例的配置文件留着备用
  
  [root@localhost nginx]# wget http://raw.githubusercontent.com/jamtur01/dockerbook-code/master/code/5/sample/nginx/global.conf
  [root@localhost nginx]# wget http://raw.githubusercontent.com/jamtur01/dockerbook-code/master/code/5/sample/nginx/nginx.conf
  

  创建一个Dockerfile
  
  注意文件名一定要写正确
  [root@localhost nginx]# vi Dockerfile
  输入下面的内容
  FROM ubuntu:14.04
  MAINTAINER lilei "448117472@qq.com"
  ENV REFRESHED_AT 2018-2-2
  RUN apt-get update
  RUN apt-get -y -q install nginx
  RUN mkdir -p /var/www/html
  ADD global.conf /etc/nginx/conf.d/
  ADD nginx.conf /etc/nginx/nginx.conf
  EXPOSE 80
  

  制作镜像
  
  
  然后执行docker build进行镜像的制作,这里注意后面的/nginx文件夹,如果有加,可能会报push image denied requested access to the resource is denied错误
  [root@localhost nginx]# docker build -t lilei/nginx /nginx
  Sending build context to Docker daemon 5.12 kB
  Step 1/9 : FROM ubuntu:14.04
  ---> 8cef1fa16c77
  Step 2/9 : MAINTAINER lilei "448117472@qq.com"
  ---> Using cache
  ---> 7013e02dde1c
  Step 3/9 : ENV REFRESHED_AT 2018-2-2
  ---> Using cache
  ---> a4cdf457c1b2
  Step 4/9 : RUN apt-get update
  ---> Using cache
  ---> e87bf1be2cc2
  Step 5/9 : RUN apt-get -y -q install nginx
  ---> Using cache
  ---> fef2d696c4bc
  Step 6/9 : RUN mkdir -p /var/www/html
  ---> Using cache
  ---> 838bdc0fafb0
  Step 7/9 : ADD global.conf /etc/nginx/conf.d/
  ---> b6f6d5de2a9f
  Removing intermediate container e14a54a0cb76
  Step 8/9 : ADD nginx.conf /etc/nginx/nginx.conf
  ---> b52578fa9810
  Removing intermediate container 2203a47feb23
  Step 9/9 : EXPOSE 80
  ---> Running in a938db4b48d1
  ---> 5e3141e91571
  Removing intermediate container a938db4b48d1
  Successfully built 5e3141e91571
  创建完成后,用docker images查看所有镜像
  [root@localhost website]# docker images
  

  运行镜像
  
  执行命令docker run运行此镜像
  [root@localhost nginx]# docker run -d -p 80 --name website \
  > -v $PWD/website:/var/www/html/website \
  > lilei123/nginx nginx
  执行docker ps –l查看网站的端口,可以看到对外映射的端口是32768。
  [root@localhost nginx]# docker ps -l
  CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  60f9f90b1f87 lilei/nginx "nginx" 2 minutes ago Up 2 minutes 0.0.0.0:32768->80/tcp website
  在宿主机的/nginx/website目录下添加index.html文件,输入hello world。
  访问http://宿主IP:32768

  

  发布镜像
  
  先在https://hub.docker.com上注册一个帐号,然后在本地登录到hub上
  如果未登录,会报denied: requested access to the resource is denied错误
  [root@localhost website]# docker login
  Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one.
  Username: lilei123
  Password:
  Login Succeeded
  然后执行push操作,注意镜像的名称要符合格式注册用户名/镜像名
  
  可以用docker tag IMAGEID(镜像id) REPOSITORY:TAG(仓库:标签)修改镜像名称
  [root@localhost website]# docker push lilei123/nginx
  The push refers to a repository [docker.io/lilei123/nginx]
  7f92bc2c1763: Pushed
  4348d854faed: Pushed
  b10190830b1e: Pushed
  f1f90a01ed71: Pushed
  7d48d55701f7: Pushed
  98bb41f25d33: Pushed
  0404d129c384: Pushed
  5081cf9eb266: Pushed
  f9dfc87a2e75: Pushed
  ed9fd767a1ff: Pushed
  0fea3c8895d3: Pushed
  d626a8ad97a1: Pushed
  1.0: digest: sha256:7a33a8bd719ff0fed4f75ba9f0b6e4963c88f6547039a92070ca5ff4ddc4289f size: 2828
  Push完成后可以在页面上看到push上来的镜像

  用docker pull 可以下载我们上传的镜像
  [root@localhost website]# docker pull lilei123/nginx:1.0
  Trying to pull repository docker.io/lilei123/nginx ...
  1.0: Pulling from docker.io/lilei123/nginx
  如果本地存在会报已存在的错误,不过也可以证明我们的镜像是可以用的。
  关注微信公众号“挨踢学霸”,更多技术姿势在等你





运维网声明 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-675309-1-1.html 上篇帖子: Docker学习笔记2 下篇帖子: Kubernetes实战[1]: 基于kubernetes构建Docker集群环境实战
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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