- 下载
nginx
、php:7.2-fpm
、mysql
镜像 - 启动mysql容器:
docker run -itd -v /宿主机/目录/mysql:/var/lib/mysql -p 33066:3306 --name=mysql -e MYSQL_ROOT_PASSWORD
=password mysql
- 构建
php72-fpm
镜像
FROM php:7.2-fpm
RUN docker-php-ext-install pdo_mysql
nginx
、php:7.2-fpm
、mysql
镜像docker run -itd -v /宿主机/目录/mysql:/var/lib/mysql -p 33066:3306 --name=mysql -e MYSQL_ROOT_PASSWORD
=password mysql
php72-fpm
镜像FROM php:7.2-fpm
RUN docker-php-ext-install pdo_mysql
Dockerfile
就是名为Dockerfile
的文件,文件中包含一些Linux命令,Docker
通过读取文件中的命令来组建镜像。
Dockerfile
一般分为四部分:基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令,# 为 Dockerfile
中的注释。
docker build -t image_name:tag_name .
也可以通过-f
参数来指定Dockerfile文件位置docker build -f /path/Dockerfile .
———————————————————————————————————————————————
| ——————————————— 宿主机 |
| | 容器 | |
80<————>80 | |
| | | |
| ——————————————— |
———————————————————————————————————————————————docker run -itd -p 宿主机端口号:容器端口号
docker run -itd -v /宿主机/文件目录/文件名:/容器/目录/文件名
docker cp 容器名:/容器目录/文件名 /宿主机目录/文件名
docker exec -it container_name/container_id /bin/bash
exit
docker commit -a "author" -m "message" container_name/container_id new_image_name:tag_name
-a
:参数可选,用于指定作者,可以写你的名字-m
:参数可选,提交信息,可以说一下你做了哪些修改container_id
:该参数为被修改的容器IDnew_image_name
:此为新镜像的名字,可自定义tag_name
:此为新镜像的标签,可不写,不写时标签默认为latest
docker run -itd --name=container_name image_name
-i 表示以交互模式运行容器;
-d 表示后台运行容器,并返回容器ID;
-t 为容器重新分配一个伪输入终端;
--name 为容器指定名称
docker ps
docker ps -a
docker stop container_name/container_id
docker start container_name/container_id
docker restart container_name/container_id
docker rm container_name/container_id