Docker 常用软件安装

Docker 可以说对于软件开发非常方便了,可以运行不同中间件服务软件,对外暴露使用,而且容器与容器之间互不干扰。

下面分别讲述一些常用软件在 Docker 上的安装(后续会继续补充):

1.MySQL

安装并运行指令(自动拉取镜像):

docker run -p 3306:3306 --name mysql \
-v /mydata/mysql/log:/var/log/mysql \
-v /mydata/mysql/data:/var/lib/mysql \
-v /mydata/mysql/conf:/etc/mysql \
-e MYSQL_ROOT_PASSWORD=root \
-d mysql:5.7

MySQL 配置文件:
vim /mydata/mysql/conf/my.cnf

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

2.Redis

由于 Redis 配置文件可能会挂载失败,预先创建出 redis.conf

mkdir -p /mydata/redis/conf
touch /mydata/redis/conf/redis.conf

docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \
-v /mydata/redis/conf/redis.conf:/etc/redis/redis.conf \
-d redis redis-server /etc/redis/redis.conf 

-d redis redis-server /etc/redis/redis.conf:Redis 以 /etc/redis/redis.conf 下的配置文件进行启动。

3.zipkin 可视化链路

docker run --name zipkin -d -p 9411:9411 openzipkin/ziplin

生产环境可以使用 ElasticSearch 进行链路持久化:

docker run -env STORAGE_TYPE=elasticsearch -env ES_HOSTS=http://39.96.51.36:9200
openzipkin/zipkin-dependencies

4.ElasticSearch

docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms512m -Xmx512m" \
-v /mydata/elasticsearch/config/elasticsearch.yml: \
/usr/share/elasticsearch/confing/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2

5.Kibana

docker run --name kibana -e ELASTICSEARCH_HOSTS=http://39.96.51.36:9200 -p 5601:5601 \
-d kibana:7.4.2

6.Nginx

docker run -p 80:80 --name nginx \
-v /mydata/nginx/html:/usr/share/nginx/html \
-v /mydata/nginx/logs:/var/log/nginx \
-v /mydata/nginx/conf:/etc/nginx \
-d nginx:1.10

7.RabbitMQ

docker run -d --name rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 25672:25672 \
-p 15671:15671 -p 15672:15672 rabbitmq:management

4369、25672:Erlang 发现&集群端口
5671、5672:AMQP 端口
15671:web 管理后台端口
61613、61614:STOMP 协议端口
1883、8883:MQTT 协议端口

你可能感兴趣的:(环境部署,微服务开发)