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プロトコルポート