Use docker deployment of commonly used development environment
Intro
Use docker, many environments can make use of docker to deploy, no need all environment are installed locally, is very convenient.
Some time ago before the computer repair Depot, came back to be re-installed all the software again, a lot of trouble, some environments directly with docker deployed, eliminating the need to download still have to re-install the software.
Deployment SqlServer
docker deployment SqlServer 2017 linux
docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' -p 1433:1433 --name sqlserver --restart=always -d microsoft/mssql-server-linux:2017-latest
If you want the data persistence, you can mount the data directory,
sudo docker run -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' --name 'sql1' -p 1401:1433 -v sql1data:/var/opt/mssql -d microsoft/mssql-server-linux:2017-latest
Redis deployment
docker deployment redis
docker run --restart=always -d -p 6379:6379 --name redis-server redis:alpine
More: https://hub.docker.com/_/redis?tab=description
Deployment MySql
docker run --restart=always -d -p 3306:3306 --name mysql-server -e MYSQL_ROOT_PASSWORD=<rootPassword> mysql:8.0
Mounting profile:
docker run --restart=always -d -p 3306:3306 --name mysql-server -v /my/custom:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=<rootPassword> mysql:8.0
Mount the database directory
docker run --restart=always -d -p 3306:3306 --name mysql-server -v "$PWD/data":/var/lib/mysql -e MYSQL_ROOT_PASSWORD=my-secret-pw mysql:8.0
More: https://hub.docker.com/_/mysql?tab=description
Deployment elasticsearch
elasticsearch generally deployed with kibana, kibana ui interface provides a convenient query, we can use the docker-compose and deploy a elasticsearch kibana examples
version: '2'
services:
elasticsearch:
image: elasticsearch:5.6
container_name: elasticsearch
ports:
- 9200:9200
ulimits:
nofile:
soft: 65536
hard: 65536
restart: always
environment:
- "ES_JAVA_OPTS=-Xms512m -Xmx512m" #specific es java memory
volumes:
- ./es/data:/usr/share/elasticsearch/data
- ./es/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
mem_limit: 1g # memory limit
kibana:
image: kibana:5.6
container_name: kibana
ports:
- 5601:5601
links:
- elasticsearch:elasticsearch
depends_on:
- elasticsearch
environment:
ELASTICSEARCH_URL: http://elasticsearch:9200
Docker run directly deployment:
docker run -d -p 9200:9200 -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" --name=elasticsearch elasticsearch:5.6-alpine
docker run --name=kibana -d -p 5601:5601 --link elasticsearch:elasticsearch kibana:5.6
RabbitMQ deployment
docker deployment rabbitMQ
docker run -d --name rabbitmq-server -p 15672:15672 rabbitmq:3-management
More information: https://hub.docker.com/_/rabbitmq
More
Meet other common tools to add