Mac下 Docker + PHP + Nginx 运行环境搭建

Docker安装:

Mac上安装Docker,请参照文档: Install Docker on macOS

Docker镜像:

Docker 把应用程序及其依赖,打包在 image 文件里面。只有通过这个文件,才能生成 Docker 容器。image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。

image 是二进制文件。实际开发中,一个 image 文件往往通过继承另一个 image 文件,加上一些个性化设置而生成。举例来说,你可以在 Ubuntu 的 image 基础上,往里面加入 Apache 服务器,形成你的 image。

image 文件是通用的,一台机器的 image 文件拷贝到另一台机器,照样可以使用。一般来说,为了节省时间,我们应该尽量使用别人制作好的 image 文件,而不是自己制作。即使要定制,也应该基于别人的 image 文件进行加工,而不是从零开始制作。
 

下载镜像:

// pull images 镜像
docker pull ubuntu:18.04
// 根据镜像创建一个容器并运行,名称 ubuntu_nginx_php_docker
# -d 参数是让容器在后台运行
docker run -dit --name ubuntu_nginx_php_docker ubuntu:18.04

// 如上,容器已经新建完成,进入容器内部看看:
docker exec -it ubuntu_nginx_php_docker /bin/bash

查看镜像

$ docker images [OPTIONS] [REPOSITORY[:TAG]]
OPTIONS:
    1. -a          :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层)
    2. --digests   :显示镜像的摘要信息
    3. -f|--filter :显示满足条件的镜像
        * dangling=true :显示所有虚悬镜像
        * sinse=php:7.2 :显示所有在php:7.2之后获取的镜像
        * ...
    4. --format    :以指定格式显示列表
REPOSITORY:
    要查看的镜像仓库源
TAG:
    要查看的镜像tag,默认为latest

注意:容器即使停止了,容器依然是存在的,如果修改了dockerFile文件,想要使新配置生效,需要将容器删除

1. 如果容器中没有服务,即便使用了-d参数,启动后也会直接退出,所以容器必须有nginx、php-fpm这样的服务启动
2. 使用link参数可以使两个容器间使用link的值进行连接通信

Docker天然适合一个容器只运行一种服务,而这也是官方更推崇的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值