Docker入门

https://c.163yun.com/hub#/m/home/ 网易蜂巢公共镜像中心

查看8080端口的监听状态

  • netstat -na|grep 8080

查看所有的端口状态

  • netstat -lntup

启动容器

  • docker run -d -p 8080:80 hub.c.163.com/library/nginx
  • 网络映射(将外网8080映射到docker80端口)
  • 8080:80
  • 注意:从丛刻就生成容器,同时会生成ID  使用docker ps 可以查看

复制一个index页面到容器中

  • docker cp index.html 4d34b760d7a3://usr/share/nginx/html  
  • 测试:curl http://localhost:8080

停止dokcer

  • docker stop 4d34b760d7a3(容器ID)

重新打开不会进入原来的heml页面,而是一个新的nginx欢迎页,因为docker里面的操作都是暂时的

  • docker run -p 8080:80 -d hub.c.163.com/library/nginx
  • docker cp index.html 967e4c090417://usr/share/nginx/html/
  • 产生一个镜像nginx-fun
  • docker commit -m 'fun' 967e4c090417 nginx-fun

删除镜像

  • docker rmi f4fb6b2a2765(images id)

删除容器

  • docker stop id
  • docker ps -a 
  • docker rm id 

 

命令小结:

  • docker pull   获取image
  • docker build  创建image
  • docker images 列出images
  • docker run    运行container 
  • docker ps     列出container
  • docker rm     删除container
  • docker rmi    删除image
  • docker cp     在host和container之间拷贝文件
  • docker commit 保存改动为新的image(创建新的image 不推荐,一般使用dockerfile)

 

编写简单dockerfile

  • touch Dockerfile
  • vim Dockerfile
  • 写入:
  • FROM alpine:latest
  • MAINTAINER xiaoke
  • CMD echo "hello Docker!"
  • docker build -t hello_docker .
  • docker run hello_docker

 

编写简单dockerfile2

  • touch Dockerfile
  • vim Dockerfile
  • 写入:
  • FROM ubuntu
  • MAINTAINER xbf
  • RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
  • RUN apt-get update
  • RUN apt-get install -y nginx
  • COPY index.html /var/www/html
  • ENTRYPOINT ["/usr/sbin/nginx", "-g", "daemon off;"]
  • EXPOSE 80
  • docker build -t xbf/hello-nginx  .
  • docker run -d -p 80:80 xbf/hello-nginx
  • curl http://localhost(测试)

 

命令小结:

  • FROM  基础镜像
  • RUN   执行命令
  • ADD   添加文件
  • COPY  拷贝文件
  • CMD   执行命令
  • EXPOSE暴露端口

 

 

volume持久化

  • docker run -d --name nginx -v /usr/share/nginx/html nginx
  • 检查
  • docker inspect nginx
  • 获取:Mounts》Source
  • cd 进入到宿主机的nginx地址
  • cat index.html 查看index 并修改 echo "123456789" index.html
  • 进入到容器

    进入的容器中的nginx位置
    cd /usr/share/nginx/html/
    cat index.html 查看index 和在宿主机上修改的一样
    结论:linux机器上修改,docker容器就修改了
  • docker exec -it nginx /bin/bash

 

 

复制宿主机上当前目录的html到容器的指定位置

  • docker run -p 80:80  -d -v $PWD/html:/usr/share/nginx/html nginx   (会生成新的容器名字,需要重新进入的容器中查看存放文件的内容) 
  • -v $PWD/html 当前目录html里面的文件
  • curl http://localhost 测试

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值