Docker 部署常用应用(持续更新中)

一 图形化工具 Portainer

 一 简介

Docker 图形页面管理工具常用的有三种,DockerUI ,Portainer ,Shipyard 。DockerUI 是 Portainer 的前身,这三个工具通过docker api来获取管理的资源信息。平时我们常常对着shell对着这些命令行客户端,审美会很疲劳,一些多命令不是很熟悉的同学使用也困难。如果有漂亮的图形化界面可以直观查看Docker资源信息,也是非常方便的。今天我们就搭建单机版的图形化管理工具Portainer。

二 部署安装

2.1 查看portainer镜像

docker search portainer

2.2 选择喜欢的portainer风格镜像,下载

docker pull portainer/portainer

2.3 启动dockerui容器

docker run -d -p 9209:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v /opt/data3/mydocker/portainer_data:/data portainer/portainer

参数说明:

-v /var/run/docker.sock:/var/run/docker.sock :把宿主机的Docker守护进程(Docker daemon)默认监听的Unix域套接字挂载到容器中;

-v /opt/data3/mydocker/portainer_data:/data :把宿主机portainer_data数据卷挂载到容器/data目录;

三 WEB 管理

1、登陆 http://x.x.x.x:9209,设置管理员账号和密码。

2、单机版在新页面选择 Local 即可完成安装,集群选择Remote然后输入SWARM的IP地址,点击Connect完成安装。

4.浏览器访问 http://192.168.2.119:920 , 设置一个密码即可,点击创建用户

Docker 部署常用应用(持续更新中)_第1张图片

Docker 部署常用应用(持续更新中)_第2张图片

我们搭建的是单机版,直接选择Local ,点击连接

Docker 部署常用应用(持续更新中)_第3张图片

Docker 部署常用应用(持续更新中)_第4张图片

 现在就可以使用了,点击Local进入仪表盘主页面。

Docker 部署常用应用(持续更新中)_第5张图片

 容器页面

Docker 部署常用应用(持续更新中)_第6张图片

二 安装 MySql

2.1 查看可用的 MySQL 版本

docker search mysql

也可以通过官网查看:docker官网地址

Docker 部署常用应用(持续更新中)_第7张图片

Docker 部署常用应用(持续更新中)_第8张图片

2.2 下载mysql镜像

docker pull mysql:5.7

2.3 查看镜像

docker images

2.4 安装运行容器

docker run -p 3306:3306 --restart=always --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

参数说明:

  • -p 3306:3306:将容器的3306端口映射到主机的3306端口
  • -v /mydata/mysql/conf:/etc/mysql:将配置文件夹挂在到主机
  • -v /mydata/mysql/log:/var/log/mysql:将日志文件夹挂载到主机
  • -v /mydata/mysql/data:/var/lib/mysql/:将数据文件夹挂载到主机
  • -e MYSQL_ROOT_PASSWORD=root:初始化root用户的密码

2.5 安装成功验证

# 查看是否安装成功
docker ps -a

2.6 进入运行MySQL的docker容器

# 进入容器
docker exec -it mysql /bin/bash
# 访问mysql
mysql -uroot -proot --default-character-set=utf8

2.7 访问登录验证

本机可以通过 root 和密码 root 访问 MySQL 服务。

mysql -h localhost -uroot -proot

2.8 修改MySQL配置文件

进入容器内部修改mysql配置文件,如果离线状态下可能无法使用vim或者vi命令,就需要把配置文件拷贝到宿主机上来改,改完在拷贝回容器中。

#从容器中拷贝到宿主机指定目录
docker container cp mysql:/etc/my.cnf /mydata/mysql

#从指定目录把配置文件拷贝到容器中
docker container cp mydata/mysql/my.cnf mysql:/etc/

比如(添加不区分大小写配置):

lower_case_table_names=1

三 安装 Nginx

3.1 下载nginx镜像

docker pull nginx

3.2 查看镜像

 3.3 安装运行容器

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

注意:先运行一次,为了拷贝配置文件

3.4 将容器内的配置文件拷贝到指定目录,并且修改文件名称

docker container cp nginx:/etc/nginx /mydata/nginx/

# 修改文件名称
mv nginx conf

3.5 终止并删除旧容器、再次安装运行新容器

# 停止
docker stop nginx
# 删除
docker rm nginx
# 运行新容器
docker run -p 8090:80 --restart=always --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

3.6 nginx访问验证

http://192.168.56.101:8090/

3.7 如果提前没有把配置文件映射出来,可用以下方法进行修改处理

docker exec -it nginx /bin/bash

进入etc/ngxin:cd /etc/nginx

离线环境下vim或者vi无法使用,可以采用拷贝出来,改完在拷贝回来的方式进行修改,注意:xxxx是容器ID。

# 拷出命令
docker cp xxxx:/etc/nginx/nginx.conf /home/edit

# 拷入命令
docker cp  /home/edit/nginx.conf  xxxx:/etc/nginx/

四 安装 Jenkins

4.1 下载jenkins镜像

docker pull jenkins:2.60.3

4.2 查看镜像

 4.3 安装运行容器

docker run -i -t -d --restart=always --name jenkins -p 9205:8080 jenkins

4.4 访问

http://10.200.63.6:9205/login?from=%2F

五 安装 PostgreSQL

5.1 下载 PostgreSQL 镜像

docker pull postgres

5.2 查看镜像

5.3 安装运行容器

docker run -it --name postgres --restart always -e POSTGRES_PASSWORD='admin123' -e ALLOW_IP_RANGE=0.0.0.0/0 -p 54321:5432 -d postgres
--name,指定创建的容器的名字;
-e POSTGRES_PASSWORD=password,设置环境变量,指定数据库的登录口令为password;
-e ALLOW_IP_RANGE=0.0.0.0/0,这个表示允许所有ip访问,如果不加,则非本机ip访问不了
-p 54321:5432,端口映射将容器的5432端口映射到外部机器的54321端口;
-d postgres,指定使用postgres作为镜像。

5.4 连接访问

使用Navicat连接数据库,步骤如下:

Docker 部署常用应用(持续更新中)_第9张图片

Docker 部署常用应用(持续更新中)_第10张图片

六 安装 Rocketmq

6.1 下载 Rocketmq 镜像

# 下载RocketMQ
docker pull rocketmqinc/rocketmq

# 下载RocketMQ可视化界面控制台
docker pull styletang/rocketmq-console-ng

6.2 查看镜像

 6.3 部署NameServer

docker run --name rmqnamesrv -d -p 9876:9876 rocketmqinc/rocketmq sh mqnamesrv

可以curl localhost:9876 端口测试服务是否启动成功。

6.4 部署Broker

docker run --name rmqbroker -d -p 10911:10911 -p 10909:10909  --link rmqnamesrv:namesrv -e "NAMESRV_ADDR=namesrv:9876" rocketmqinc/rocketmq sh mqbroker -c ../conf/broker.conf
  •  RocketMQ是Java编写的程序,Broker和NameServer都在上面的镜像中,只是启动命令不同而已。
  • --link 将NameServer容器起个别名,Broker中需要配置一个NAMESRV_ADDR参数指向NameServer地址。
  • 可以使用curl localhost:10911验证下服务器是否启动

6.5 进入Broker容器,修改配置

# 进入容器修改配置文件
docker exec -it 37b10e2d39ae bash
cd ../conf
vi broker.conf

 Docker 部署常用应用(持续更新中)_第11张图片

 6.6 部署RocketMQ可视化界面控制台

docker run --name rmqconsole -d -p 9206:8080 --link rmqnamesrv:namesrv -e "JAVA_OPTS=-Drocketmq.namesrv.addr=namesrv:9876"  styletang/rocketmq-console-ng

以使用curl命令测试控制台界面是否成功启动。curl localhost:9206。

Docker 部署常用应用(持续更新中)_第12张图片

浏览器输入IP:端口,可以访问可视化控制台页面。

Docker 部署常用应用(持续更新中)_第13张图片

七 安装 Redis

7.1 下载镜像

docker pull redis:5

7.2 安装运行容器

docker run -p 6379:6379 --restart=always --name redis  -v /mydata/redis/data:/data  -d redis:5 redis-server

八 安装 MongoDB

8.1 下载镜像

docker pull mongo:4.2.5

8.2 安装运行容器

docker run -p 27017:27017 --restart=always --name mongo -v /mydata/mongo/db:/data/db -d mongo:4.2.5

九 安装 Rabbitmq

9.1 下载镜像

docker pull rabbitmq:3.7.15

9.2 安装运行容器

docker run -p 5672:5672 -p 15672:15672 --restart=always --name rabbitmq -d rabbitmq:3.7.15

9.3 进入容器并开启管理功能

docker exec -it rabbitmq /bin/bash
rabbitmq-plugins enable rabbitmq_management

9.4 访问地址查看是否安装成功

http://192.168.56.101:15672

9.5 web 可视化管理

用户名/密码:guest/guest

创建新的账号,设置角色等

十 安装 Elasticsearch

10.1 下载镜像

docker pull elasticsearch:7.6.2

10.2 修改虚拟内存区域大小,否则会因为过小而无法启动

sysctl -w vm.max_map_count=262144

10.3 启动时会发现/usr/share/elasticsearch/data目录没有访问权限,只需要修改/mydata/elasticsearch/data目录的权限

chmod 777 /mydata/elasticsearch/data/

10.4 安装运行容器

docker run -p 9200:9200 -p 9300:9300 --restart=always --name elasticsearch -e "discovery.type=single-node"  -e "cluster.name=elasticsearch"  -v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins -v /mydata/elasticsearch/data:/usr/share/elasticsearch/data  -d elasticsearch:7.6.2

10.5 安装中文分词器IKAnalyzer,并重新启动

docker exec -it elasticsearch /bin/bash
#此命令需要在容器中运行
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.6.2/elasticsearch-analysis-ik-7.6.2.zip
docker restart elasticsearch

10.6 浏览器访问会返回版本信息

http://192.168.56.101:9200

十一 安装 Logstash

11.1 下载镜像

docker pull logstash:7.6.2

11.2 修改Logstash的配置文件logstash.confoutput节点下的Elasticsearch连接地址为es:9200

output {
  elasticsearch {
    hosts => "es:9200"
    index => "mall-%{type}-%{+YYYY.MM.dd}"
  }
}

11.3 创建/mydata/logstash目录,并将Logstash的配置文件logstash.conf拷贝到该目录

mkdir /mydata/logstash

11.4 安装运行容器

docker run --restart=always --name logstash -p 4560:4560 -p 4561:4561 -p 4562:4562 -p 4563:4563 --link elasticsearch:es -v /mydata/logstash/logstash.conf:/usr/share/logstash/pipeline/logstash.conf  -d logstash:7.6.2

11.5 进入容器内部,安装json_lines插件

logstash-plugin install logstash-codec-json_lines

十二 安装 Kibana

12.1 下载镜像

docker pull kibana:7.6.2

12.2 安装运行容器

docker run --restart=always --name kibana -p 5601:5601 --link elasticsearch:es -e "elasticsearch.hosts=http://es:9200" -d kibana:7.6.2

12.3 访问地址进行测试

http://192.168.56.101:5601

十三 安装 达梦8 数据库

13.1 下载 DM8 安装包

wget -O dm8_docker.tar -c https://download.dameng.com/eco/dm8/dm8_docker.tar

13.2 导入镜像

docker import dm8_docker.tar dm8:v01

14.3 安装运行容器

docker run -p 5236:5236 --restart=always --name dm8 dm8:v01 /bin/bash /startDm.sh

你可能感兴趣的:(Docker,docker,容器,运维,docker部署,常用软件部署)