docker安装运行环境相关的容器

docker安装常用软件步骤

1)搜索镜像

2)拉取镜像

3)查看镜像

4)启动镜像

5)停止镜像

6)移出镜像

2023-07-26

docker安装mysql8.0

1、准备工作

安装环境:Centos7、Docker 23.0.1

2、下载mysql8.0docker镜像

docker pull mysql:8.0

3、查看下载的docker镜像

docker images

在这里插入图片描述

4、创建挂载目录

mkdir -p /mydata/mysql/conf
mkdir -p /mydata/mysql/conf/mysql.conf.d
mkdir -p /mydata/mysql/conf/conf.d
mkdir -p /mydata/mysql/data
mkdir -p /mydata/mysql/logs
mkdir -p /mydata/mysql/mysql-files

5、创建my.cnf文件,放在 /mydata/mysql/conf 目录中,注意配置文件中的端口号、字符集、时区

vi /mydata/mysql/conf/my.cnf
[client]
port = 3308
default-character-set = utf8mb4
 
[mysql]
port = 3308
default-character-set = utf8mb4
 
[mysqld]
# bind-address = 0.0.0.0
# port = 3306
 
max_connections=10000
 
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
 
# 设置时区和字符集
# default-time-zone='+8:00'
character-set-client-handshake=FALSE
init_connect='SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci'
 
gtid-mode=ON
enforce-gtid-consistency = ON

6、启动镜像

docker run --restart=always  --name mysql8.0  -v /mydata/mysql/conf:/etc/mysql  -v /mydata/mysql/data:/var/lib/mysql  -v /mydata/mysql/log:/var/log -p 3308:3306 -e MYSQL_ROOT_PASSWORD='123456' -d mysql:8.0 --lower_case_table_names=1

#说明
--lower_case_table_names=1 :忽略大小写 

6.1 可能出现问题

(1)docker 启动MySQL一直处于restarting状态
在这里插入图片描述

#查看docker关于mysql日志

docker logs -f mysql8.0
docker logs -f [CONTAINER ID/IMAGE]
docker logs -f [容器名称/容器ID]

在这里插入图片描述

[ERROR] [Entrypoint]: mysqld failed while attempting to check config
        command was: mysqld --verbose --help --log-bin-index=/tmp/tmp.WHijR591XA
        mysqld: Can't read dir of '/etc/mysql/conf.d/' (Errcode: 2 - No such file or directory)
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!

原因:该日志大概意思就是说没找到 /etc/mysql/conf.d 这个文件夹。原因其实是官方的配置文件已经不放在/etc/mysql底下了,这底下就一个空文件夹conf.d。

解决方案

1.先创建一个简单的mysql容器实例

docker run -d -e MYSQL_ROOT_PASSWORD='123456' mysql:8.0

2.复制里面的/etc/mysql文件夹

docker cp mysql8.0:/etc/mysql/. /mydata/mysql/conf

3.删除掉临时容器

docker rm -f mysql8.0

4.启动完整的容器命令

docker run --restart=always  --name mysql8.0  -v /mydata/mysql/conf:/etc/mysql  -v /mydata/mysql/data:/var/lib/mysql  -v /mydata/mysql/log:/var/log -p 3308:3306 -e MYSQL_ROOT_PASSWORD='123456' -d mysql:8.0 --lower_case_table_names=1

5.问题解决

Docker安装mysql5.7

1、准备工作

安装环境:Centos7、Docker 23.0.1

2、下载mysql8.0docker镜像

docker pull mysql:5.7

3、查看下载的docker镜像

docker images

4、创建挂载目录

mkdir -p /mydata/mysql/conf
mkdir -p /mydata/mysql/data
mkdir -p /mydata/mysql/logs

5、创建my.cnf文件,放在 /mydata/mysql/conf 目录中,注意配置文件中的端口号、字符集、时区

vi /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-seriver=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

以下配置无法直接运行mysql8导出SQL文件,原因是SQL中utf8mb4_0900_ai_ci,导致无法识别
在这里插入图片描述

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

6、启动镜像

docker run --restart=always -p 3306:3306 --privileged=true --name mysql5.7 \
-v /mydata/mysql/logs:/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 --lower_case_table_names=1

#说明
--lower_case_table_names=1 :忽略大小写
# --name指定容器名字 -v目录挂载 -p指定端口映射  -e设置mysql参数 -d后台运行

查看mysql5.7的编码格式

show variables like 'character%';

在这里插入图片描述

6.1 可能出现问题

(1)docker 启动MySQL一直处于restarting状态

解决方案同上

2023-07-27

Docker安装Redis7.0.12

1、准备工作

安装环境:Centos7、Docker 23.0.1

2、下载mysql8.0docker镜像

docker pull redis

3、查看下载的docker镜像

docker images

在这里插入图片描述

4、创建挂载目录

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

5、修改redis.conf文件

默认是不持久化的。在配置文件中输入appendonly yes,就可以aof持久化了。

vi /mydata/redis/conf/redis.conf

# 插入下面内容
appendonly yes
# 保存
 
docker restart redis
docker -it redis redis-cli

6、启动镜像

docker run -p 36379:6379 --restart=always --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 \
--appendonly yes --requirepass 123456

7、进入Redis容器

docker exec -it redis redis-cli

Docker安装portainer(Docker管理工具)

前言

Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署

1、准备工作

安装环境:Centos7、Docker 23.0.1

2、下载镜像

#在docker仓库查找portainer的版本
docker search portainer

docker pull portainer/portainer-ce

3、查看下载的docker镜像

docker images
#查看下载的镜像版本
docker image inspect (docker image名称):latest|grep -i version

docker image inspect portainer/portainer-ce:latest|grep -i version

在这里插入图片描述

4、创建挂载目录

mkdir -p /mydata/portainer/data

5、获取汉化包(汉化不可用)

新版本的portainer/portainer-ce还没有找到正确的汉化方法,旧版的portainer/portainer的汉化已测试失败。具体是:第一次登录直接登录页面,没有进入创建新用户页面,另外portainer/portainer已被官方弃用,推荐安装portainer/portainer-ce

在这里插入图片描述

#直接下载
#进入目录
cd /mydata/portainer
#下载
wget https://raw.githubusercontent.com/renyinping/portainer-cn/master/Portainer-CN.zip

#解压文件并重命名
unzip Portainer-CN.zip -d public
unzip public.zip -d public

旧版汉化包本机无界存储路径

D:\production_software\软件安装包\Portainer-CN.zip

D:\production_software\软件安装包\public.zip

对于新版本的portainer/portainer-ce汉化无效。

6、启动镜像

#正常启动,非汉化
docker run -p 19000:9000 --name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /mydata/portainer/data:/data \
-d portainer/portainer-ce

#正常启动汉化版本
docker run -p 9000:9000 --name portainer \
--restart=always \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /mydata/portainer/data:/data \
-v /mydata/portainer/public:/public \
-d portainer/portainer-ce

7、创建新用户

账号:admin 密码:jtydl@100yingri

Docker安装Elasticsearch7.4.2

前言

1、安装环境:

服务器ip:192.168.2.28

Centos7、Docker 23.0.1

2、下载镜像

#在docker仓库查找portainer的版本
docker search portainer

docker pull elasticsearch:7.4.2

3、查看下载的docker镜像

4、创建挂载目录

mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
 
echo "http.host: 0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml

#注意加权限,不然外部无法访问
chmod -R 777 /mydata/elasticsearch/

5、启动容器

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

访问测试

http://47.113.199.234:9200/
在这里插入图片描述

Docker安装Kibana7.4.2

前言

Elasticsearch2可视化工具,可以不安装

1、安装环境:

服务器ip:192.168.2.28

Centos7、Docker 23.0.1

2、下载镜像

docker pull kibana:7.4.2(版本要一致)

在这里插入图片描述

4、启动容器

docker run --name kibana --restart=always -e ELASTICSEARCH_HOSTS=http://(虚拟机地址):9200 -p 5601:5601 \
-d kibana:7.4.2

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

访问测试

http://47.113.199.234:9200/

Docker安装Nginx1.10

1、安装环境:

服务器ip:192.168.2.28

Centos7、Docker 23.0.1

2、下载镜像

#在docker仓库查找nginx的版本
docker search nginx

docker pull nginx:1.10

3、查看下载的docker镜像

4、创建挂载目录

mkdir -p /mydata/nginx/conf
mkdir -p /mydata/nginx/html
mkdir -p /mydata/nginx/logs

5、启动容器

docker run -p 80:80 --name nginx --restart=always \
-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

访问测试

在nginx的html文件夹下新建es文件夹,创建fenci.txt来放自定义的分词

mkdir -p /mydata/nginx/html/es
cd /mydata/nginx/html/es
vi fenci.txt

#写入
乔碧萝
尚硅谷

访问地址http://192.168.2.28/es/fenci.txt验证该文件是否创建成功
在这里插入图片描述

为ik分词器配置自定义的分词匹配文件

来到ik的config目录下,打开IKAnalyzer.cfg.xml
在文件中修改配置为nginx中的地址

cd /mydata/elasticsearch/plugins/ik/config
vi IKAnalyzer.cfg.xml

在这里插入图片描述

需要重启Elasticsearch

docker restart elasticsearch

测试ik分词器配置自定义的分词匹配文件是否生效
在这里插入图片描述

Docker安装RabbitMQ3.12.2

1、安装环境:

服务器ip:192.168.2.28

Centos7、Docker 23.0.1

2、下载镜像

#在docker仓库查找nginx的版本
docker search rabbitmq

docker pull rabbitmq

启动容器

docker run -it --name=rabbitmq --restart=always -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 -p 15672:15672 -p 5672:5672 rabbitmq

3、开放rabbitmq的端口

//开放15672端口
 firewall-cmd --zone=public --add-port=15672/tcp --permanent 

//开放5672端口
firewall-cmd --zone=public --add-port=5672/tcp --permanent 

//设置立即生效
firewall-cmd --reload 

//查看开放的端口
firewall-cmd --zone=public --list-ports

在这里插入图片描述

4、启动管理插件

#进入容器,启动插件
[root@localhost ~]# docker exec -it rabbitmq bash

root@0d026c19297b:/# rabbitmq-plugins enable rabbitmq_management

在这里插入图片描述

#执行下列命令修改management_agent.disable_metrics_collector.conf文件

root@0d026c19297b:/etc/rabbitmq/conf.d# echo management_agent.disable_metrics_collector=false > management_agent.disable_metrics_collector.cof

访问测试

127.0.0.1:15672

admin 123456

docker安装Tomcat:10.0.14

2023-10-09

1)搜索镜像

以Tomcat为例子,先去官网仓库搜索https://hub.docker.com/search?q=tomcat

在这里插入图片描述
在这里插入图片描述

或者直接命令查询

docker search tomcat

在这里插入图片描述

2)拉取镜像

docker pull tomcat

在这里插入图片描述

3)查看镜像

docker images tomcat

在这里插入图片描述

4)启动镜像

docker run -it -p 8080:8080 --name t1 tomcat

-p小写,主机端口:docker容器端口

-P大写,随机分配端口
在这里插入图片描述

i 交互

t 终端

d 后台

访问首页出现问题

在这里插入图片描述

原因1:可能没有映射端口或者没有关闭防火墙(已排除)

原因2:把webapps.dist目录换成webapps

1)先进入Tomcat容器
docker exec -it t1 /bin/bash

2)进入/usr/local/tomcat目录,进入容器默认就是这个目录了

3)先删除webapps文件,再把webapps.dist目录换成webapps
rm -r webapps
mv webapps.dist webapps

修改完成后不需要重启Tomcat,刷新浏览器即可看到猫。
在这里插入图片描述

docker安装Tomcat8-jdk8

docker run -d -p 8090:8080 --name mytomcat8 billygoo/tomcat8-jdk8

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值