![70c327d297b5ba924593078e7152b00b.png](https://i-blog.csdnimg.cn/blog_migrate/faadbebe6ed3f110c3e7622c8b4979e0.jpeg)
1、Docker 的应用场景跟好处我就不一一介绍了,这些你都不知道应该从新学下 Docker,或者来听课学习!直接上安装教程:
2、Docker安装
系统环境:docker最低支持centos7且在64位平台上,内核版本在3.10以上
版本:社区版,企业版(包含了一些收费服务)
官方版安装教程(英文)
https://docs.docker.com/install/linux/docker-ce/centos/#upgrade-docker-after-using-the-convenience-script
网络版安装教程:
# 安装docker
配置加速器
简介:DaoCloud 加速器 是广受欢迎的 Docker 工具,解决了国内用户访问 Docker Hub 缓慢的问题。DaoCloud 加速器结合国内的 CDN 服务与协议层优化,成倍的提升了下载速度。
DaoCloud官网:
https://www.daocloud.io/mirror#accelerator-doc
# 一条命令加速(记得重启docker)
3、Docker基础命令
docker --help(中文注解)
Usage
3.1 启动容器的两种方式
容器是运行应用程序的,所以必须得先有一个操作系统为基础
1、基于镜像新建一个容器并启动
# 1. 后台运行一个docker
当利用docker run来创建容器时,Docker在后台运行的步骤如下:
# 1. 检查本地是否存在指定的镜像,不存在就从公有仓库下载
2、将一个终止状态(stopped)的容器重新启动
[
3.2 提交创建自定义镜像
# 1.我们进入交互式的centos容器中,发现没有vim命令
3.3 外部访问容器
容器中可以运行网络应用,但是要让外部也可以访问这些应用,可以通过-p或-P参数指定端口映射。
docker
打开浏览器访问服务器的9000端口, 内容显示 Hello world!表示正常启动
(如果访问失败的话,检查自己的防火墙,以及云服务器的安全组)
4、利用dockerfile定制镜像
镜像是容器的基础,每次执行docker run的时候都会指定哪个镜像作为容器运行的基础。我们之前的例子都是使用来自docker hub的镜像,直接使用这些镜像只能满足一定的需求,当镜像无法满足我们的需求时,就得自定制这些镜像。
# 镜像的定制就是定制每一层所添加的配置、文件。如果可以吧每一层修改、安装、构建、操作的命令都写入到一个脚本,用脚本来构建、定制镜像,这个脚本就是dockerfile。
参数详解
FROM
进阶知识(了解)
VOLUME
5、发布到仓库
5.1 docker hub共有镜像发布
docker提供了一个类似于github的仓库docker hub,官方网站(需注册使用)
https://hub.docker.com/
# 注册docker id后,在linux中登录dockerhub
5.2 私有仓库
docker hub 是公开的,其他人也是可以下载,并不安全,因此还可以使用docker registry官方提供的私有仓库
用法详解:
https://yeasy.gitbooks.io/docker_practice/repository/registry.html
# 1.下载一个docker官方私有仓库镜像
6、实例演示
编写dockerfile,构建自己的镜像,运行flask程序。
确保app.py和dockerfile在同一个目录!
# 1.准备好app.py的flask程序
以上内容希望帮助到大家,很多PHPer在进阶的时候总会遇到一些问题和瓶颈,业务代码写多了没有方向感,不知道该从那里入手去提升,对此我整理了一些资料,包括但不限于:分布式架构、高可扩展、高性能、高并发、服务器性能调优、TP6,laravel,YII2,Redis,Swoole、Swoft、Kafka、Mysql优化、shell脚本、Docker、微服务、Nginx等多个知识点高级进阶干货需要的可以免费分享给大家 ,需要请戳这里链接 或 者关注咱们下面的知乎专栏PHP架构师圈子zhuanlan.zhihu.com
![5825f8670b8863084bac5abcd3aaf4b1.png](https://i-blog.csdnimg.cn/blog_migrate/a17c1b074a840cc33c86e5e66ea8b4e0.jpeg)