Docker安装资源

整理参考:

   https://blog.csdn.net/qq_26641781/article/details/80886831

   https://www.cnblogs.com/smiler/p/10112676.html

1.mysql:

docker pull mysql

docker run -di --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

docker exec -it mysql /bin/bash

2.redis:

docker pull redis:latest
docker run -itd --name redis-test -p 6379:6379 redis
docker exec -it redis-test /bin/bash

3.mongodb:

执行如下命令拉取Mongo镜像:

docker pull mongo
创建Mongo专用的文件夹:

cd /docker-mount/
mkdir mongodb
cd ./mongodb
mkdir data
mkdir backup
执行如下命令启动MongoDB:

docker run --name mongo -p 27017:27017 -v /docker-mount/mongodb/data:/data/db -v /docker-mount/mongodb/backup:/data/backup -d mongo --auth

docker exec -it mongo bash

用户创建:mongo use admin db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]})

4.zookeeper:

docker pull zookeeper

docker run -itd --name zookeeper -p 2181:2181 -d zookeeper

5.memcahce:

docker pull memcached

docker run --name memcache-xiao -p 11211:11211 -d memcached

设置容量128M
docker run --name memcache-xiao -p 11211:11211 -d memcached memcached -m 128

6.nginx:

docker pull nginx
cd /docker-mount/nginx (注:自定义)
https://www.cnblogs.com/hailun1987/p/9671801.html

配置复制:docker cp nginx:/etc/nginx/nginx.conf  $PWD/nginx.conf

启动:docker run --name nginx -d -p 80:80 -v $PWD/html:/usr/share/nginx/html:ro  -v $PWD/logs:/var/log/nginx -v $PWD/nginx.conf:/etc/nginx/nginx.conf:ro -d nginx

7.elasticsearch:

docker pull elasticsearch:6.5.0
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:6.5.0
docker exec -it es /bin/bash

# 进入配置文件夹

cd config
# 修改配置文件
vi elasticsearch.yml
# 加入跨域配置
http.cors.enabled: true
http.cors.allow-origin: "*"

重启:docker restart es

安装中文分词插件:
宿主机:sudo sysctl -w vm.max_map_count=262144
docker exec -it es /bin/bash
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip
退出,重启

8.elasticsearch-head:

docker pull mobz/elasticsearch-head:5
docker run -d --name es_head -p 9100:9100 mobz/elasticsearch-head:5 

9.kafka

镜像下载:
docker pull wurstmeister/kafka

启动kafka容器:
docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.8.238:2181 -e KAFKA_ADVERTISED_HOST_NAME=192.168.8.238 -e KAFKA_ADVERTISED_PORT=9092 -v /docker-mount/kafka/localtime:/etc/localtime wurstmeister/kafka:latest

在别的机器上访问kafka,中间两个参数的192.168.8.238 改为宿主机器的IP地址

测试kafka:
docker exec -it kafka /bin/bash

集群搭建:
同一台机器搭建多个kafka,只需要改变brokerId和端口
docker run -d --name kafka2 -p 9093:9092 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=192.168.8.238:2181 -e KAFKA_ADVERTISED_HOST_NAME=192.168.8.238 -e KAFKA_ADVERTISED_PORT=9093 -v /docker-mount/kafka2/localtime:/etc/localtime wurstmeister/kafka:latest
建Replication为2,Partition为2的topic:
在kafka容器中的opt/kafka_xxx目录下输入: bin/kafka-topics.sh --create --zookeeper 192.168.8.238:2181 --replication-factor 2 --partitions 2 --topic partopic
查看topic的状态 bin/kafka-topics.sh --describe --zookeeper 192.168.8.238:2181 --topic partopic

注:在虚拟机安装,内存不够时会启动失败

10.canal

##下载Canal镜像:
docker pull canal/canal-server:

##生成canal-server容器
docker run -d --name canal-server -p 11111:11111 canal/canal-server

##修改docker-mysql配置
cat /etc/mysql/my.cnf
docker.cnf
log-bin=mysql-bin # 开启binlog
binlog-format=ROW # 选择ROW模式
server_id=1 # 配置MySQL replaction需要定义,不要和Canal的slaveId重复

##修改canal-server的配置
进入canal-server容器
docker exec -it canal-server bash
编辑canal-server的配置
vi canal-server/conf/example/instance.properties

11.rabbitmq

镜像下载:docker pull rabbitmq:management
容器创建:docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
访问管理界面的地址就是 http://[宿主机IP]:15672,可以使用默认的账户登录,用户名和密码都guest

12.activemq

镜像下载:docker pull webcenter/activemq
容器创建:docker run -d --name activemq -p 61616:61616 -p 8161:8161 webcenter/activemq
61616是activemq的容器使用端口,8161是web页面管理端口

 

13.nacos-docker

https://github.com/nacos-group/nacos-docker

安装问题处理: 

Docker报错 WARNING: IPv4 forwarding is disabled. Networking will not work.
解决办法:
# vim /usr/lib/sysctl.d/00-system.conf
添加如下代码:
net.ipv4.ip_forward=1
重启network服务
# systemctl restart network
完成以后,删除错误的容器,再次创建新容器,就不再报错了。

 

启动所有容器:docker start  `docker ps -a -q`

 
posted @ 2019-11-19 21:30  清月无声  阅读(259)  评论(0)    收藏  举报