Docker基础使用(二)
在配置镜像之后可以进行docker的基础使用如
使用docker run XXXXX 来运行某个容器
我选择的使用docker-compose,相对更加简单简洁。
首先指定版本号
#选择2号对应新版本的docker
version: '2'
#开始定义服务
services:
mysql:
#mysql服务创建
#image可以在hub.docker.com查询到对应的image名,这里推荐指定版本来保证环境的一致性,不会因为镜像升级使得环境出现问题
image: "mysql:5.7.19"
environment:
MYSQL_ROOT_PASSWORD: "ROOT"
MYSQL_DATABASE: "docker"
MYSQL_USER: "wormw"
MYSQL_PASSWORD: "wormw"
volumes:
#信息后进行储存位置的映射储存,使产生的数据得到储存,而不是存储在内存中,当容器结束后数据就消失
- ./db:/var/lib/mysql
php:
#利用dockerfile创建php7-fpm,主要是由于php需要加载许多第三方插件,直接加载image可能无法满足需求
build:
#context填写的是dockerfile的路径
context: ./conf/php7
dockerfile: Dockerfile
volumes:
#与上面的情况类似,这里加载volumes是为了让容器可以运行容器外的php程序,所以将目录进行了关联
- ./web:/mnt/web
web:
#创建nginx服务,同时依赖php服务
image: nginx
volumes:
#将本地配置文件通过映射关联给容器,实现对容器的配置
- ./conf/nginx/config:/etc/nginx/conf.d
ports:
#绑定宿主机的80端口
- "80:80"
depends_on:
#依赖php服务,实现容器间互相访问
- php
volumes_from:
#访问php的本地卷
- php
networks:
#加入建立的网络中,实现容器间的互访
- shared_net
redis:
image: redis:3.2.10
ports:
- "6379:6379"
networks:
#创建刚才引用的网络,将需要进行互联的容器加入同一网络中
shared_net:
external: true