1、拉取镜像
#ubuntu-16.04.1-server-amd64 sudo apt-get install docker sudo apt-get install docker-compose #拉取镜像 sudo docker pull mysql:5.7 sudo docker pull redis:3.2 sudo docker pull mongo:3.4 sudo docker pull jetty:9.3-jre8 sudo docker pull nginx:1.11 sudo docker pull elasticsearch:5.1 sudo docker pull ubuntu:16.04
2、新建网络
sudo docker network create hiup
3、整理yml文件
3.1yml版本1
h01-mysql02:
image: mysql:5.7
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-mysql02
net: hiup
ports:
- "3306:3306"
volumes:
- /home/hiup/docker/data/mysql/var/lib/mysql:/var/lib/mysql
- /home/hiup/docker/data/mysql/etc/mysql/conf.d:/etc/mysql/conf.d
environment:
- MYSQL_ROOT_PASSWORD=hiup
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
h01-redis02:
image: redis:3.2
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-redis02
net: hiup
volumes:
- /home/hiup/docker/data/redis/etc/redis/:/etc/redis/
- /home/hiup/docker/data/redis/data:/data
ports:
- "6379:6379"
command: redis-server /etc/redis/redis.conf
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
h01-mongo02:
image: mongo:3.4
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-mongo02
net: hiup
ports:
- "27017:27017"
volumes:
- /home/hiup/docker/data/mongo/etc/mongod.conf:/etc/mongod.conf
- /home/hiup/docker/data/mongo/data/db:/data/db
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
h01-jetty02:
image: jetty:9.3-jre8
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-jetty02
net: hiup
ports:
- "8080:8080"
volumes:
- /home/hiup/docker/data/jetty/usr/local/jetty/etc:/usr/local/jetty/etc
- /home/hiup/docker/data/jetty/webapps:/var/lib/jetty/webapps
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
h01-nginx02:
image: nginx:1.11
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-nginx02
net: hiup
ports:
- "80:80"
volumes:
- /home/hiup/docker/data/nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- /home/hiup/docker/data/nginx/usr/share/nginx/html:/usr/share/nginx/html
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
h01-es02:
image: elasticsearch:5.1
mem_limit: 640m
cpu_shares: 100
tty: true
hostname: h01-es02
net: hiup
ports:
- "9200:9200"
- "9300:9300"
volumes:
- /home/hiup/docker/data/es/usr/share/elasticsearch/config:/usr/share/elasticsearch/config
- /home/hiup/docker/data/es/usr/share/elasticsearch/data:/usr/share/elasticsearch/data
command: elasticsearch
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
h01-ubuntu02:
image: ubuntu:16.04
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-ubuntu02
net: hiup
#ports:
#volumes:
command: /bin/bash
log_driver: "json-file"
log_opt:
max-size: "10m"
max-file: "10"
3.2yml版本2
version: '2'
services:
h01-mysql02:
image: mysql:5.7
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-mysql02
network_mode: hiup
ports:
- "3306:3306"
volumes:
- /home/hiup/docker/data/mysql/var/lib/mysql:/var/lib/mysql
- /home/hiup/docker/data/mysql/etc/mysql/conf.d:/etc/mysql/conf.d
environment:
- MYSQL_ROOT_PASSWORD=hiup
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
h01-redis02:
image: redis:3.2
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-redis02
network_mode: hiup
volumes:
- /home/hiup/docker/data/redis/etc/redis/:/etc/redis/
- /home/hiup/docker/data/redis/data:/data
ports:
- "6379:6379"
command: redis-server /etc/redis/redis.conf
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
h01-mongo02:
image: mongo:3.4
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-mongo02
network_mode: hiup
ports:
- "27017:27017"
volumes:
- /home/hiup/docker/data/mongo/etc/mongod.conf:/etc/mongod.conf
- /home/hiup/docker/data/mongo/data/db:/data/db
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
h01-jetty02:
image: jetty:9.3-jre8
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-jetty02
network_mode: hiup
ports:
- "8080:8080"
volumes:
- /home/hiup/docker/data/jetty/usr/local/jetty/etc:/usr/local/jetty/etc
- /home/hiup/docker/data/jetty/webapps:/var/lib/jetty/webapps
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
h01-nginx02:
image: nginx:1.11
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-nginx02
network_mode: hiup
ports:
- "80:80"
volumes:
- /home/hiup/docker/data/nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf
- /home/hiup/docker/data/nginx/usr/share/nginx/html:/usr/share/nginx/html
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
h01-es02:
image: elasticsearch:5.1
mem_limit: 640m
cpu_shares: 100
tty: true
hostname: h01-es02
network_mode: hiup
ports:
- "9200:9200"
- "9300:9300"
volumes:
- /home/hiup/docker/data/es/usr/share/elasticsearch/config:/usr/share/elasticsearch/config
- /home/hiup/docker/data/es/usr/share/elasticsearch/data:/usr/share/elasticsearch/data
command: elasticsearch
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
h01-ubuntu02:
image: ubuntu:16.04
mem_limit: 128m
cpu_shares: 100
tty: true
hostname: h01-ubuntu02
network_mode: hiup
ports:
volumes:
command: /bin/bash
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "10"
4、运行
sudo docker-compose up -d
5、配置文件目录
.
├── es
│ └── usr
│ └── share
│ └── elasticsearch
│ ├── config
│ │ ├── elasticsearch.yml
│ │ ├── log4j2.properties
│ │ └── scripts
│ └── data
│ └── nodes
│ └── 0
│ ├── node.lock
│ └── _state
│ ├── global-0.st
│ └── node-0.st
├── jetty
│ ├── usr
│ │ └── local
│ │ └── jetty
│ │ └── etc
│ │ ├── example-quickstart.xml
│ │ ├── gcloud-memcached-session-context.xml
│ │ ├── gcloud-session-context.xml
│ │ ├── hawtio.xml
│ │ ├── home-base-warning.xml
│ │ ├── jamon.xml
│ │ ├── jdbcRealm.properties
│ │ ├── jetty-alpn.xml
│ │ ├── jetty-annotations.xml
│ │ ├── jetty-cdi.xml
│ │ ├── jetty.conf
│ │ ├── jetty-debuglog.xml
│ │ ├── jetty-debug.xml
│ │ ├── jetty-deploy.xml
│ │ ├── jetty-gcloud-memcached-sessions.xml
│ │ ├── jetty-gcloud-session-idmgr.xml
│ │ ├── jetty-gcloud-sessions.xml
│ │ ├── jetty-gzip.xml
│ │ ├── jetty-http2c.xml
│ │ ├── jetty-http2.xml
│ │ ├── jetty-http-forwarded.xml
│ │ ├── jetty-https.xml
│ │ ├── jetty-http.xml
│ │ ├── jetty-infinispan.xml
│ │ ├── jetty-ipaccess.xml
│ │ ├── jetty-jaas.xml
│ │ ├── jetty-jdbc-sessions.xml
│ │ ├── jetty-jmx-remote.xml
│ │ ├── jetty-jmx.xml
│ │ ├── jetty-logging.xml
│ │ ├── jetty-lowresources.xml
│ │ ├── jetty-monitor.xml
│ │ ├── jetty-nosql.xml
│ │ ├── jetty-plus.xml
│ │ ├── jetty-proxy-protocol-ssl.xml
│ │ ├── jetty-proxy-protocol.xml
│ │ ├── jetty-proxy.xml
│ │ ├── jetty-requestlog.xml
│ │ ├── jetty-rewrite-customizer.xml
│ │ ├── jetty-rewrite.xml
│ │ ├── jetty-setuid.xml
│ │ ├── jetty-spring.xml
│ │ ├── jetty-ssl-context.xml
│ │ ├── jetty-ssl.xml
│ │ ├── jetty-started.xml
│ │ ├── jetty-stats.xml
│ │ ├── jetty-threadlimit.xml
│ │ ├── jetty.xml
│ │ ├── jminix.xml
│ │ ├── jolokia.xml
│ │ ├── krb5.ini
│ │ ├── README.spnego
│ │ ├── rewrite-compactpath.xml
│ │ ├── spnego.conf
│ │ ├── spnego.properties
│ │ └── webdefault.xml
│ └── webapps
│ └── jvmjsp.war
├── mongo
│ ├── data
│ │ └── db
│ │ ├── collection-0-4376730799513530636.wt
│ │ ├── collection-2-4376730799513530636.wt
│ │ ├── collection-5-4376730799513530636.wt
│ │ ├── diagnostic.data
│ │ │ └── metrics.2016-12-27T08-57-50Z-00000
│ │ ├── index-1-4376730799513530636.wt
│ │ ├── index-3-4376730799513530636.wt
│ │ ├── index-4-4376730799513530636.wt
│ │ ├── index-6-4376730799513530636.wt
│ │ ├── journal
│ │ │ ├── WiredTigerLog.0000000001
│ │ │ ├── WiredTigerPreplog.0000000001
│ │ │ └── WiredTigerPreplog.0000000002
│ │ ├── _mdb_catalog.wt
│ │ ├── mongod.lock
│ │ ├── sizeStorer.wt
│ │ ├── storage.bson
│ │ ├── WiredTiger
│ │ ├── WiredTigerLAS.wt
│ │ ├── WiredTiger.lock
│ │ ├── WiredTiger.turtle
│ │ └── WiredTiger.wt
│ └── etc
│ └── mongod.conf
├── mysql
│ ├── etc
│ │ └── mysql
│ │ └── conf.d
│ │ ├── docker.cnf
│ │ └── mysql.cnf
│ └── var
│ └── lib
│ └── mysql
│ ├── auto.cnf
│ ├── ib_buffer_pool
│ ├── ibdata1
│ ├── ib_logfile0
│ ├── ib_logfile1
│ ├── mysql [error opening dir]
│ ├── performance_schema [error opening dir]
│ └── sys [error opening dir]
├── nginx
│ ├── etc
│ │ └── nginx
│ │ └── nginx.conf
│ └── usr
│ └── share
│ └── nginx
│ └── html
│ ├── 50x.html
│ └── index.html
└── redis
├── data
│ └── dump.rdb
└── etc
└── redis
├── redis.conf
└── sentinel.conf
6、本地工具安装
sudo apt-get install mysql-client sudo apt-get install redis-tools sudo apt-get install mongodb-clients sudo apt-get install curl



