Docker 安装常用软件
来源:SegmentFault
时间:2023-01-17 12:27:11 151浏览 收藏
来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习数据库相关编程知识。下面本篇文章就来带大家聊聊《Docker 安装常用软件》,介绍一下MySQL、docker、Redis、RabbitMQ、elastic-search,希望对大家的知识积累有所帮助,助力实战开发!
进行下面文章阅读之前,请确保您的电脑或者服务器已经安装了 Docker。这里介绍 docker 安装常用软件,默认使用的都是 latest 最新版本,如果有特殊要求则需将 latest 替换成相应版本号即可,具体操作步骤雷同。
1. Docker 安装 MySQL
1.1 拉取 MySQL 镜像
docker pull mysql:latest
1.2 创建 MySQL 容器
# 不指定本地映射文件 docker run --name mysql01 -p 3309:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:latest # 指定本地映射文件(宿主机需提前创建文件夹) docker run --name mysql01 -p 3309:3306 -e MYSQL_ROOT_PASSWORD=root -v /System/Volumes/Data/data/personal/docker/mysql/mysql01:/var/lib/mysql -d mysql:latest
1.3 启动与停止 MySQL 容器
# 启动 start 后面跟的可以是容器ID或者是容器名称,我这里使用的是名称 docker start mysql01 # 启动 stop 后面跟的可以是容器ID或者是容器名称,我这里使用的是名称 docker stop mysql01
1.4 访问 MySQL 数据库
# 1.使用 mysql-cli 访问 mysql-cli -h 127.0.0.1 -u root -p root # 2.使用 Navicat 或 mysqlWorkbatch 等 mysql 图形界面工具连接 连接:127.0.0.1 端口:3306 用户名:root 密码:root
1.5 删除 MySQL 容器
# 删除容器,容器ID 可通过命令:`docker ps -a` 查询 docker rm 容器ID
2. Docker 安装 Redis
2.1 拉取 Redis 镜像
docker pull redis:latest
2.2 创建 Redis 容器
docker run -d --name redis01 -p 6379:6379 redis --requirepass "password"
3. Docker 安装 Nginx
3.1 拉取镜像
docker pull nginx:latest
3.2 启动容器
docker run -d --name nginx01 -p 8080:80 nginx:latest # 将 nginx.conf 挂载到宿主机 docker run -d --name nginx01 -p 8080:80 -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf nginx:latest
启动之后浏览器打开http://localhost:8080显示
start nginx windows启动 service nginx start linux/mac启动 nginx -c filename 为 nginx 指定一个配置文件,来代替缺省的。 nginx -c filename -p /path 为 nginx 指定配置文件和日志存储位置 nginx -s relaod 重启 nginx -s stop 快速关闭Nginx,可能不保存相关信息,并迅速终止web服务。 nginx -s quit 平稳关闭Nginx,保存相关信息,有安排的结束web服务。 nginx -t 不运行,仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 nginx -v 显示 nginx 的版本。 nginx -V 显示 nginx 的版本,编译器版本和配置参数。
4. Docker 安装 RabbitMQ
4.1 查找 RabbitMQ 镜像
为什么RabbitMQ要增加查找镜像这一步呢,因为Rabbit有一个管理后台,我们需要在管理后台查看 MQ 的一些信息,所以 latest 版本不适合,我们可以在 docker hub上查找,我这里选择的是 浏览器中打开http://localhost:15672/ 输入用户名: admin ,密码: 123456 即可。 如果返回以下信息则说明安装成功。 在elasticsearch.yml的文件末尾加上: 修改配置后重启容器即可,即: 安装完成后可以在 下面 kibana 安装完成后,在 不添加 启动以后可以打开浏览器输入http://localhost:5601就可以打开kibana的界面了 顺便可以尝试下上面docker pull rabbitmq:3.8.7-management
4.3 启动镜像
# 访问http://localhost:15672 默认用户名密码都是guest
docker run -d --name rabbitmq01 -p 5672:5672 -p 15672:15672 rabbitmq:3.8.7-management
# 指定密码启动
docker run -d --name rabbitmq01 -p 5672:5672 -p 15672:15672 --hostname rabbitmq01 -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 rabbitmq:3.8.7-management
4.4 访问 RabbitMQ 管理后台
5. Docker 安装 CentOS
5.1 拉取镜像
docker pull centos:latest
5.2 启动固定 ip 的 centos 容器
# 创建自定义网络
docker network create --subnet=172.18.0.0/16 mynetwork
# 启动固定 ip 容器
docker run -itd --privileged --name centos1 --net mynetwork --ip 172.18.0.11 centos:latest /usr/sbin/init
6. Docker 安装 ElasticSearch
6.1 拉取镜像
docker pull elasticsearch:latest
6.2 启动容器
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -d elasticsearch:latest
6.3 测试安装完成
# 1.在终端输入
curl http://localhost:9200
# 2.在浏览器打开链接
http://localhost:9200
{
"name" : "530dd7820315",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "7O0fjpBJTkmn_axwmZX0RQ",
"version" : {
"number" : "7.2.0",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "508c38a",
"build_date" : "2019-06-20T15:54:18.811730Z",
"build_snapshot" : false,
"lucene_version" : "8.0.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
6.4 修改配置,解决跨域
# 进入 es 容器内部
docker exec -it elasticsearch /bin/bash
cd /usr/share/elasticsearch/config/
vi elasticsearch.yml
http.cors.enabled: true
http.cors.allow-origin: "*"
docker restart elasticsearch
6.5 安装 ik 分词器
# 进入 es 容器内部
docker exec -it elasticsearch /bin/bash
cd /usr/share/elasticsearch/plugins/
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.2.0/elasticsearch-analysis-ik-7.2.0.zip
# 退出 es 容器内部
exit
# 重启 es
docker restart elasticsearch
POST test/_analyze
{
"analyzer": "ik_max_word",
"text": "你好我是东邪Jiafly"
}
docker pull kibana:latest
7.2 启动容器
docker run --name kibana --link=elasticsearch:test -p 5601:5601 -d kibana:latest
docker start kibana
6.5
ik-分词器是否安装成功哦。
附录
Docker 常用命令
命令 | 功能 |
---|---|
docker pull 镜像名称:镜像版本号 | 拉取镜像 |
docker images | 查看已经拉取的镜像 |
docker ps | 查看正在运行中的镜像 |
docker inspect 容器ID | 查看容器的详细信息包括端口,IP 等 |
docker network -l | 查看容器的网络 |
今天关于《Docker 安装常用软件》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于mysql的内容请关注golang学习网公众号!
-
499 收藏
-
160 收藏
-
105 收藏
-
286 收藏
-
244 收藏
-
214 收藏
-
155 收藏
-
485 收藏
-
436 收藏
-
125 收藏
-
174 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习
-
- 自由的棉花糖
- 好细啊,码住,感谢作者大大的这篇博文,我会继续支持!
- 2023-03-28 22:16:44
-
- 哭泣的书包
- 这篇博文真及时,太全面了,真优秀,mark,关注up主了!希望up主能多写数据库相关的文章。
- 2023-03-18 23:11:46
-
- 刻苦的过客
- 这篇技术文章出现的刚刚好,太细致了,受益颇多,mark,关注老哥了!希望老哥能多写数据库相关的文章。
- 2023-03-10 20:33:18
-
- 拉长的鲜花
- 写的不错,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,帮助很大,总算是懂了,感谢楼主分享技术贴!
- 2023-02-24 21:28:59
-
- 体贴的刺猬
- 太详细了,码起来,感谢up主的这篇技术文章,我会继续支持!
- 2023-02-17 04:08:58
-
- 风趣的豌豆
- 这篇文章真是及时雨啊,很详细,很有用,mark,关注师傅了!希望师傅能多写数据库相关的文章。
- 2023-02-05 06:59:11
-
- 贤惠的八宝粥
- 受益颇多,一直没懂这个问题,但其实工作中常常有遇到...不过今天到这,看完之后很有帮助,总算是懂了,感谢up主分享技术贴!
- 2023-01-30 16:07:34
-
- 矮小的大雁
- 这篇文章太及时了,太细致了,很棒,码住,关注师傅了!希望师傅能多写数据库相关的文章。
- 2023-01-22 03:06:36