首页 > 技术文章 > 开发环境之Docker常用镜像

xdzy 2020-05-24 13:27 原文

查看更多开发环境配置,请点击《开发环境配置大全》

贰拾贰章:Docker常用镜像安装教程

查看服务器IP地址:ip addr

使用xshell连接服务器

MySql部署

1)查看mysql5.7版本镜像

docker search mysql5.7

 

2)下载指定版本镜像

docker pull centos/mysql-57-centos7

 

3)创建容器并运行

docker run -di --name=mysql -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 centos/mysql-57-centos7

--name:容器名称

-p 3307:3306:前面是宿主机端口,后面是容器端口,这里做端口映射

-e MYSQL_ROOT_PASSWORD:密码

 

4)远程连接

账号:root,密码:admins,端口:3307,IP地址:192.168.25.128

 

5)进入MySql容器

docker exec -it mysql /bin/bash

mysql:设置容器名称或ID

退出使用exit

 

6)登录测试

mysql -h localhost -P 3307 -u root -padmins

最后的-p后面跟的是密码

 

Tomcat部署

1)查看Tomcat版本镜像

docker search tomcat

 

2)下载指定版本镜像

docker pull tomcat

 

3)创建容器并运行

docker run -di --name=tomcat -p 8081:8080 -v /usr/local/webapps:/usr/tomcat/webapps tomcat

不做映射可以如下创建:

docker run -di --name=tomcat -p 8081:8080 tomcat

 

4)浏览器访问

http://192.168.25.128:8081

注意:webapps是空的,不能直接访问tomcat主页面,需要添加项目访问

 

Nginx部署

1)查看Nginx版本镜像

docker search nginx

 

2)下载指定版本镜像

docker pull nginx

 

3)创建容器并运行

docker run -di --name=nginx -p 80:80 nginx

 

4)浏览器访问

http://192.168.25.128

 

5)访问静态资源

5.1 先将静态资源通过xftp上传到服务器

cd ~ //回到主界面
dir //查看当前目录下的所有文件

 

5.2 查看容器文件

docker exec -it nginx /bin/bash //进入到容器
cd /etc //进入到当前目录的etc文件夹
cat nginx.conf //查看配置文件

如下可以查看到nginx的配置文件:

配置文件中可以看到,nginx可以通过include导入其他配置文件:

 

5.3 上面只是提供查看,其实上传文件之后,可以直接拷贝静态资源到nginx的html目录下

docker cp dist nginx:/usr/share/nginx/html/

 

Redis部署

1)查看Redis版本镜像

docker search redis

 

2)下载指定版本镜像

docker pull redis

 

3)创建容器并运行

docker run -di --name=redis -p 6379:6379 redis

 

4)远程连接

通过可视化软件连接测试

 

MongoDB部署

1)查看MongoDB版本镜像

docker search mongodb

 

2)下载指定版本镜像

docker pull mongo

 

3)创建容器并运行

docker run -di --name=mongo -p 27017:27017 mongo

 

4)远程连接

通过可视化软件连接测试

 

ElasticSearch部署

1)查看ElasticSearch版本镜像

docker search elasticSearch

 

2)下载指定版本镜像

docker pull elasticsearch:5.6.8

 

3)创建容器并运行

docker run -di --name=es -p 9200:9200 -p 9300:9300 elasticsearch:5.6.8

 

4)测试

http://192.168.25.128:9200

 

5)解决docker安装后9300端口不能用

5.1 将要修改的配置文件复制到宿主机

进入容器

docker exec -it es /bin/bash

发现该配置文件在/usr/share/elasticsearch下,我们要把它复制出来,放到/usr/share下;

执行exit退出;

执行复制文件命令

docker cp es:/usr/share/elasticsearch/config/elasticsearch.yml /usr/share/elasticsearch.yml

 

5.2 重新创建容器

删除已经创建的ElasticSearch容器

先执行docker stop es关闭,再执行docker rm es删除;

然后执行

docker run -di --name=elasticsearch -p 9200:9200 -p 9300:9300 -v
/usr/share/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml elasticsearch:5.6.8

即可将这个配置文件挂载到宿主机下。

 

5.3 修改配置文件

执行cd /usr/share/;

执行ls进入查看所有文件发现现在有elasticsearch.yml这个文件了;

接下来执行vi elasticsearch.yml 进入修改页面,按i进行修改,将transport.host: 0.0.0.0这个注释放

开,按del可以删除前面#号,接着按esc,shift+z+z退回页面。

 

5.4 重启容器

执行docker restart elasticsearch重启容器;

发现不能重启,原因在于内存不够,所以要配置硬件调优。

执行vi /etc/security/limits.conf进入配置文件修改,在最后面添加* soft nofile 65536 和 * hard

nofile 65536,接着按esc,shift+z+z退回页面。

执行vi /etc/sysctl.conf进入修改,在最下面添加vm.max_map_count=655360;

最后重启虚拟机,执行reboot,开启服务docker start ID号;完美解决。

 

6)安装IK分词器

通过xftp上传ik分词器安装包,执行

docker cp ik elasticsearch:/usr/share/elasticsearch/plugins即可将IK分词器放入到插件文件夹下;

重启容器生效。

 

7)设置跨域

执行cd /usr/share/;执行vi elasticsearch.yml;添加:

http.cors.enabled: true
http.cors.allow-origin: "*"

重启容器生效。

 

8)安装head图形化界面

执行 docker pull mobz/elasticsearch-head:5 下载镜像;

执行 docker run -di --name=heard -p 9100:9100 mobz/elasticsearch-head:5 安装head成功。

访问地址:http://192.168.25.128:9001

 

RabbitMq部署

1)查看RabbitMq版本镜像

docker search rabbitmq

 

2)下载指定版本镜像

docker pull rabbitmq:management

 

3)创建容器并运行

docker run -di --name=rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 rabbitmq:management

 

4)测试

创建之后,默认安装好了图形化界面

访问地址:http://localhost:15672

默认账号密码:guest

 

推荐阅读