分享一次部署经历,docker+dubbo+zookeeper

12 篇文章 0 订阅
4 篇文章 0 订阅
docker 搭建 zookeeper 集群

安装:拉取指定版本镜像

docker pull zookeeper:3.4

创建运行在后台的zookeeper容器

docker run -d --name=zk-1 zookeeper:3.4 
docker run -d --name=zk-2 zookeeper:3.4 
docker run -d --name=zk-3 zookeeper:3.4 

进入容器

docker exec -it zk-1 /bin/bash

退出容器

exit

查看zookeeper容器运行日志

docker logs -f zk-1
docker logs -f zk-2
docker logs -f zk-3

例子

[root@VM-8-9-centos ~]# docker run -d --name=zk-1 zookeeper:3.4
eb7a7e029aea2539845e6e091026bfe48a645e57d63154267d79e088549a0524
[root@VM-8-9-centos ~]# docker run -d --name=zk-2 zookeeper:3.4
2405fb92253f3822dc293b5bfd4510d7115836c47d884f42c761c601be326a54
[root@VM-8-9-centos ~]# docker run -d --name=zk-3 zookeeper:3.4
ea0949dfa1297fdc968cf218b388cb60b07c8147b6aed3c3e5f8ddfda00f31d9
[root@VM-8-9-centos ~]# docker ps -a
CONTAINER ID   IMAGE           COMMAND                  CREATED          STATUS          PORTS                          NAMES
ea0949dfa129   zookeeper:3.4   "/docker-entrypoint.…"   19 seconds ago   Up 17 seconds   2181/tcp, 2888/tcp, 3888/tcp   zk-3
2405fb92253f   zookeeper:3.4   "/docker-entrypoint.…"   27 seconds ago   Up 26 seconds   2181/tcp, 2888/tcp, 3888/tcp   zk-2
eb7a7e029aea   zookeeper:3.4   "/docker-entrypoint.…"   37 seconds ago   Up 35 seconds   2181/tcp, 2888/tcp, 3888/tcp   zk-1

容器中没有vim等软件,需要先更新

apt update
apt install vim
apt install net-tools

zookeeper配置文件zoo.cfg

clientPort=2181
dataDir=/data
dataLogDir=/datalog
tickTime=2000
initLimit=5
syncLimit=2
autopurge.snapRetainCount=3
autopurge.purgeInterval=0
maxClientCnxns=60
server.1=172.17.0.2:2888:3888
server.2=172.17.0.3:2888:3888
server.3=172.17.0.4:2888:3888

启动命令

bash bin/zkServer.sh start
bash bin/zkServer.sh start /conf/zoo.cfg
查看状态
bash bin/zkServer.sh status
关闭
bash bin/zkServer.sh stop

修改过后,bash bin/zkServer.sh运行不生效,docker restart id

例子

[root@VM-8-9-centos ~]# docker restart eb7a7e029aea 
eb7a7e029aea
[root@VM-8-9-centos ~]# docker restart ea0949dfa129 
ea0949dfa129
[root@VM-8-9-centos ~]# docker restart 2405fb92253f
2405fb92253f
[root@VM-8-9-centos ~]# docker ps -a
CONTAINER ID   IMAGE           COMMAND                  CREATED             STATUS          PORTS                          NAMES
ea0949dfa129   zookeeper:3.4   "/docker-entrypoint.…"   About an hour ago   Up 23 seconds   2181/tcp, 2888/tcp, 3888/tcp   zk-3
2405fb92253f   zookeeper:3.4   "/docker-entrypoint.…"   About an hour ago   Up 11 seconds   2181/tcp, 2888/tcp, 3888/tcp   zk-2
eb7a7e029aea   zookeeper:3.4   "/docker-entrypoint.…"   About an hour ago   Up 39 seconds   2181/tcp, 2888/tcp, 3888/tcp   zk-1
[root@VM-8-9-centos ~]# docker exec -it zk-1 /bin/bash
root@eb7a7e029aea:/zookeeper-3.4.14# bash bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: follower
root@eb7a7e029aea:/zookeeper-3.4.14# exit
exit
[root@VM-8-9-centos ~]# docker exec -it zk-2 /bin/bash
root@2405fb92253f:/zookeeper-3.4.14# bash bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: follower
root@2405fb92253f:/zookeeper-3.4.14# exit
exit
[root@VM-8-9-centos ~]# docker exec -it zk-3 /bin/bash
root@ea0949dfa129:/zookeeper-3.4.14# bash bin/zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /conf/zoo.cfg
Mode: leader
docker安装mysql
docker pull mysql:5
docker run -itd --name mysql-5 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5
docker exec -it mysql-5 /bin/bash
mysql -u root -p
172.17.0.5
vim /etc/mysql/my.cnf

内存优化,降低内存占用

[client]
port            = 3306
default-character-set = utf8
[mysqld]
port            = 3306
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 32M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 512K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
wait_timeout = 10
interactive_timeout = 10
log-bin=mysql-bin
binlog_format=mixed
server-id       = 1
innodb_data_file_path = ibdata1:10M:autoextend
innodb_buffer_pool_size = 64M
innodb_log_file_size = 2G
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50
character-set-server=utf8
collation-server=utf8_bin
default-storage-engine=INNODB
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
default-character-set = utf8
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
docker 安装java
docker pull java:8
docker run -itd --name jdk-8 java:8
docker 部署springboot

app_dockerfile

FROM java:8
MAINTAINER kongdechang <kongdechang@kongjs.com>
VOLUME /tmp
ADD ./app.jar app.jar
RUN bash -c 'touch /app.jar'
ENTRYPOINT ["java","-jar","/app.jar"]
docker build -f ./app_dockerfile -t webapp .
docker run -d --name=web -p 8080:8080 webapp
docker logs -f web
# 制作 生产者镜像
docker build -f ./provider_dockerfile -t provider .
docker run -d --name=pro  provider
# 制作 消费者镜像
docker build -f ./consumer_dockerfile -t consumer .
docker run -d --name=con -p 8888:8888 consumer

docker 安装 rocketmq

没有官方镜像,查询其他的

 docker search rocketmq

阿里的镜像

docker pull xlxwhy/rocketmq
docker run -d --name rkmq-1 -p 9876:9876 -p 10909-10911:10909-10911 xlxwhy/rocketmq
docker exec -it rkmq-1 /bin/bash
vi deploy/app/broker.p
#容器ip
namesrvAddr=172.17.0.7:9876
#服务器ip
brokerIP1=42.193.117.23
42.193.117.23:9876
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值