设置镜像源:
文章链接:https://www.cnblogs.com/anliven/p/6218741.html
Docker镜像服务器在国外,会导致访问很慢,可以使用以下命令来设置加速器
curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http://e7850958.m.daocloud.io
一、docker每安装一个软件都需要拉取镜像:
# softName -- 下载的软件名,如:mysql、redis等
# version -- 下载软件的版本
docker pull [softName]:[version]
例子:
#拉取mysql5.7的镜像
docker pull mysql:5.7
二、实际安装的例子(持续更新):
1.mysql(关系型数据库):
docker run -p 3306:3306 --restart=always --name gourdmysql -v /usr/local/gourd/docker/mysql/conf:/etc/mysql/conf.d -v /usr/local/gourd/docker/mysql/logs:/logs -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
命令说明:
-p 3306:3306:将容器的 3306 端口映射到主机的 3306 端口。
--restart=always 当Docker 重启时,容器也会重新启动
--name mymysql 给容器起名
-v $PWD/conf:/etc/mysql/conf.d:将主机当前目录下的 conf/my.cnf 挂载到容器的 /etc/mysql/my.cnf。
-v $PWD/logs:/logs:将主机当前目录下的 logs 目录挂载到容器的 /logs。
-v $PWD/data:/var/lib/mysql :将主机当前目录下的data目录挂载到容器的 /var/lib/mysql 。
-e MYSQL_ROOT_PASSWORD=123456:初始化 root 用户的密码。
2.tomcat(应用服务器):
docker run --name gourdtomcat -p 8080:8080 --restart=always -v /usr/local/gourd/docker/tomcat/test:/usr/local/tomcat/webapps/test -d tomcat
命令说明:
-p 8080:8080:将容器的8080端口映射到主机的8080端口
-v $PWD/test:/usr/local/tomcat/webapps/test:将主机中当前目录下的test挂载到容器的/test
3.redis(非关系型数据库-缓存):
docker run -p 6379:6379 -v /usr/local/gourd/docker/redis/data:/data -v /usr/local/gourd/docker/redis/conf/redis.conf:/etc/redis/redis.conf --name myredis --restart=always -d redis redis-server --appendonly yes
命令说明:
-p 6379:6379 : 将容器的6379端口映射到主机的6379端口
-v $PWD/data:/data : 将主机中当前目录下的data挂载到容器的/data
--requirepass "123456" 密码设置为 123456
redis-server --appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
4.nginx(负载均衡):
docker run --name gourdnginx -p 80:80 --restart=always -d nginx
命令说明:
-p 80:80:将容器的80端口映射到主机的80端口
--name mynginx:将容器命名为mynginx
-v $PWD/www:/www:将主机中当前目录下的www挂载到容器的/www
-v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:将主机中当前目录下的nginx.conf挂载到容器的/etc/nginx/nginx.conf
-v $PWD/logs:/wwwlogs:将主机中当前目录下的logs挂载到容器的/wwwlogs
5.kafka(消息中间件)
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
在命令中运行docker images验证两个镜像已经安装完毕
启动zookeeper容器
docker run -d --name gourdzookeeper -p 2181:2181 --restart=always -t wurstmeister/zookeeper
启动kafka容器
docker run -d --name kafka -p 9092:9092 --restart=always -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=172.19.175.13:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.19.175.13:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
-e KAFKA_HEAP_OPTS="-Xms256M -Xms128M" 设置内存大小
6.portainer(容器监控)
运行portainer:
docker run -d -p 9000:9000 \
--restart=always \
-v /usr/local/gourd/docker/docker.sock:/var/run/docker.sock \
--name portainer-web \
portainer/portainer
7.安装docker-compose:
curl -L https://github.com/docker/compose/releases/download/1.23.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
8.安装openOffice(文件预览)
docker run -d -p 6080:6080 --restart=always tobegit3hub/dockerized-openoffice
9.安装rap2(接口文档)
https://www.cnblogs.com/rynxiao/p/9080179.html
10.docker安装elasticsearch
# 拉取镜像
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
# 安装
docker run -d --name es -p 9200:9200 -p 9300:9300 --restart=always -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2
安装ik分词器:
elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.3.2/elasticsearch-analysis-ik-6.3.2.zip
参考:https://www.cnblogs.com/jianxuanbing/p/9410800.html
11.安装nacos:
https://blog.csdn.net/HXNLYW/article/details/97101028
https://www.jianshu.com/p/c410845f0dca
12、安装fastDfs:
http://www.morecoder.com/article/1058224.html
13、安装ELK:
https://www.cnblogs.com/hackyo/p/9951684.html
14、安装sonar:
https://www.cnblogs.com/freestudy/articles/10277783.html
三、安装运行后,执行命令:
// 查看运行中的容器
docker ps
// 查看所有的容器
docker ps -a
如果启动异常,执行命令,docker logs 【容器id】查看具体错误详情:
docker logs [容器名/容器ID]