# 1、yum 包更新到最新
yum update
# 2、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
# 3、 设置yum源
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo(中央仓库)yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)
# 4、 安装docker,出现输入的界面都按 y
yum install -y docker-ce
# 5、 查看docker版本,验证是否验证成功
docker -v
设置阿里云镜像加速:
mkdir -p /etc/docker
vi /etc/docker/daemon.json
daemon.json内容如下:
{
"registry-mirrors": ["https://k03gsl1f.mirror.aliyuncs.com"]
}
重启:
docker安装nginxsudo systemctl daemon-reload
sudo systemctl restart docker
拉取官方最新版本镜像:
$ docker pull nginx:latest
查看本地镜像:
$ docker images
运行容器:
docker run --name nginx -d -p 80:80 nginx
参数说明:
-
--name nginx:容器名称。
-
-p 8080:80: 端口进行映射,将本地 8080 端口映射到容器内部的 80 端口。
-
-d nginx: 设置容器在在后台一直运行。
创建文件夹 :
cd /opt
mkdir nginx
cd nginx
mkdir conf conf.d html logs
vi /opt/nginx/html/index.html:
Welcome to nginx!
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.For online documentation and support please refer to
nginx.org.
Commercial support is available at
nginx.com.Thank you for using nginx.
vi /opt/nginx/conf/nginx.conf
#user nobody;
worker_processes 1;#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;#pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';#access_log logs/access.log main;
sendfile on;
#tcp_nopush on;#keepalive_timeout 0;
keepalive_timeout 65;#gzip on;
server {
listen 80;
server_name localhost;#charset koi8-r;
#access_log logs/host.access.log main;
location / {
#修改默认发布路径
root /usr/share/nginx/html;
index index.html index.htm;
}error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}}
}
启动容器:
docker run --name nginx -d -p 80:80 -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/logs:/var/log/nginx -v /opt/nginx/conf.d:/etc/nginx/conf.d nginx
外部访问需要打开linux防火墙指定端口
docker安装MySQL拉取镜像:
$ docker pull mysql:5.7
查看本地镜像:
$ docker images
自定义容器:
docker network create --driver bridge mybridge
运行容器:
docker run -itd --net=mybridge --name mysql57 -v /data/mysql:/var/lib/mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root daocloud.io/library/mysql:5.7.7 --lower_case_table_names=1
参数说明:
-
-v :挂载数据卷,保证容器数据持久化,当删除容器后,数据依然存在。
-
-p 3306:3306 :映射容器服务的 3306 端口到宿主机的 3306 端口,外部主机可以直接通过 宿主机ip:3306 访问到 MySQL 的服务。
-
MYSQL_ROOT_PASSWORD=123456:设置 MySQL 服务 root 用户的密码。
可能出现的错误:
navicat连接报错,原因是mysql最新版更新来认证插件( caching_sha2_password ),改了后navicat就连接不上,所以需要改回 mysql_native_password 。
docker安装redis拉取最新版本镜像:
$ docker pull redis:latest
查看本地镜像:
$ docker images
运行容器:
$ docker run -itd --name redis-test -p 6379:6379 redis --requirepass Dreamtale199432
参数说明:
-p 6379:6379:映射容器服务的 6379 端口到宿主机的 6379 端口。外部可以直接通过宿主机ip:6379 访问到 Redis 的服务。
通过 redis-cli 连接测试使用 redis 服务:
docker安装rabbitMQ$ docker exec -it redis-test /bin/bash
拉取镜像:
docker pull daocloud.io/library/rabbitmq:3.6.1-management
创建容器:
docker run -d --name rabbitmq3.6.1 -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin 0aaf0120f505
参数说明:
-d 后台运行容器;
--name 指定容器名;
-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);
-v 映射目录或文件;
将当前路径下(由pwd)的data文件夹映射到docker中的/var/lib/路径下的的rabbitmq文件夹,这样,docker下的/var/lib/rabbitmq就指向来本机的pwd/data文件夹;
--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 “节点名称” 存储数据,默认为主机名);
-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)
可以使用浏览器打开web管理端:http://Server-IP:15672
docker安装FastDFS1.获取FastDFS镜像:
docker image pull delron/fastdfs
2.运行tracker:
docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker
参数说明:
--network=host 类似于vmware中的桥接模式,容器和宿主机(centos)在同一个网络,但是没有独立ip,和centos同一个ip。
3.运行storage:
docker run -dti --network=host --name storage -e TRACKER_SERVER=120.25.104.87:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage
注意:如果无法重新运行,可以删除/var/fdfs/storage/data目录下的fdfs_storaged.pid 文件,然后重新运行storage, 注意这个pid文件十分重要!!
上传测试:进入容器:
docker exec -it storage /bin/bash
进入etc目录 :
cd /etc
利用自带客户端上传yum.conf:
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf yum.conf
如果成功,将返回文件id:
group1/M00/00/00/wKj5lF-8YFSAf7GfAAAD-xaDY2s60.conf
返回linux主机,开放端口:
firewall-cmd --zone=public --permanent --add-port=8888/tcp
firewall-cmd --zone=public --permanent --add-port=22122/tcp
firewall-cmd --zone=public --permanent --add-port=23000/tcp
systemctl restart firewalld
下载测试:
docker安装elasticsearch7.8http://requestUrl:8888/group1/M00/00/00/wKj5lGFL8pSAWTJWAAAD-xaDY2s17.conf
拉取原始镜像 :
docker pull elasticsearch:7.8.0
或者拉取国内镜像(推荐) :
docker pull daocloud.io/library/elasticsearch:7.8.0
创建数据卷
mkdir -p /usr/local/dockeres/data
mkdir -p /usr/local/dockeres/logs
mkdir -p /usr/local/dockeres/config
cd /usr/local/
chmod -R 777 dockeres
将以下链接的配置文件拷贝到linux的/usr/local/dockeres/config/目录下:
有道云笔记https://note.youdao.com/s/QJHqpkQK
有道云笔记https://note.youdao.com/s/SR1rSQ6C
运行容器 :
docker run -di --name=es2 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node"
-v /usr/local/dockeres/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
-v /usr/local/dockeres/config/jvm.options:/usr/share/elasticsearch/config/jvm.options
-v /usr/local/dockeres/data:/usr/local/dockeres/data
-v /usr/local/dockeres/logs:/usr/local/dockeres/logs
-v /usr/local/dockeres/plugins/:/usr/share/elasticsearch/plugins/
121454ddad72
如果安装有一些网络警告,建议重启一下linux
进入数据卷目录:
cd /usr/local/dockeres/config/
vi jvm.options :
自定义运行内存
-Xms256m
-Xmx256m
vi elasticsearch.yml :
cluster.name: "docker-cluster"
network.host: 0.0.0.0
http.cors.enabled: true
http.cors.allow-origin: "*"
重启ElasticSearch容器 :
docker restart es
查看日志 :
docker logs es -f
当出现以下信息,表示已经启动成功 :
2020-09-23T03:28:17.986586995Z {"type": "server", "timestamp": "2020-09-23T03:28:17,978Z", "level": "INFO", "component": "o.e.g.GatewayService", "cluster.name": "docker-cluster", "node.name": "59ecb68242af", "message": "recovered [0] indices into cluster_state", "cluster.uuid": "yNciBGGDTlCb18mUY9ArOA", "node.id": "Ut2NwQA4SsuPSItOFOI3zA" }
windows中访问测试 :
http://requestUrl:9200/
注意检查防火墙对应端口是否打开 :
安装ik插件 方式一:firewall-cmd --list-port
如果未开,手动开一下
firewall-cmd --permanent --zone=public --add-port=9200/tcp
firewall-cmd --permanent --zone=public --add-port=9300/tcp重启
firewall-cmd --reload
下载elasticsearch-analysis-ik-7.8.0:
有道云笔记https://note.youdao.com/s/20X6Jmpt
上传zip到centos 的/usr/local/dockeres/plugins/目录
解压:
unzip elasticsearch-analysis-ik-7.8.0.zip -d ./ik
删除压缩包(必须):
rm elasticsearch-analysis-ik-7.8.0.zip
重启容器:
方式二:在线安装(慢),如果找到更快的下载地址的话推荐使用docker restart es
进入容器:
docker exec -it es /bin/bash
在线下载并安装(大概30分钟) :
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.8.0/elasticsearch-analysis-ik-7.8.0.zip
退出容器 :
exit
重启ElasticSearch容器:
docker restart es
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)