Exención de responsabilidad : Este capítulo sólo se ejecutan como un proyecto de registro de tiempos front-end, se encontró que cada vez que necesita para empezar un montón de middleware, particularmente molesto en Windows empezar a pensar acerca de cómo escribir un artículo en suma, todo el middleware puso todo comenzó en el servidor, el siguiente copia directa pasta suficiente de comandos.
Por
Redis
ejemplo:MongoDB
,RabbitMQ
Consul
nginx
,,Tomcat
Este es el comando
Acoplable inicio de MySQL
Buscar
docker search mysql
Ver todos los espejos
docker images -a
ejecutar MySQL
docker run -p 3306:3306 --name mysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7.19
-p 3306:3306
: Mapa del puerto de contenedores 3306 al puerto 3306 en el host.-v $PWD/conf:/etc/mysql/conf.d
: El anfitrión en el directorio actualconf/my.cnf
para montar al contenedor/etc/mysql/my.cnf
.-v $PWD/data:/var/lib/mysql
: Los datos en el directorio de hosts de directorio está montado en el recipiente/var/lib/mysql
.-e MYSQL_ROOT_PASSWORD=root
: Inicializar la contraseña de usuario root.
Ver recipiente de correr
docker ps
En el contenido del envase
docker run -it mysql /bin/bash
acceder
mysql -u root -p
Modificar permisos
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
Esta frase es la palabra clave, borrar la memoria caché
flush privileges;
Acoplable inicio Elasticsearch
Tire version Fuente https://www.docker.elastic.co/#
docker pull docker.elastic.co/elasticsearch/elasticsearch:6.3.2
Acoplable plazo elasticsearch
El puerto por defecto es Elasticsearch 9200
, ponemos el entorno de acogida 9200
asignación de puertos de contenedores del estibador 9200
del puerto, se puede tener acceso al servicio de contenedores de Docker Elasticsearch, y, al mismo tiempo que pone este recipiente es el nombre.
docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.3.2
Configuración de Inter en el contenedor
Debido a la configuración, es necesario introducir el recipiente que modificar la información de configuración.
docker exec -it es /bin/bash
entrará en funcionamiento
# 显示文件
ls
结果如下:
LICENSE.txt README.textile config lib modules
NOTICE.txt bin data logs plugins
# 进入配置文件夹
cd config
# 显示文件
ls
结果如下:
elasticsearch.keystore ingest-geoip log4j2.properties roles.yml users_roles
elasticsearch.yml jvm.options role_mapping.yml users
# 修改配置文件
vi elasticsearch.yml
# 加入跨域配置
http.cors.enabled: true
http.cors.allow-origin: "*"
Volver a empezar
debido a cambios en la configuración, es necesario reiniciar recipiente Elasticsearch.
docker restart es
Acoplable 部署 Elasticsearch-Head
sitio web oficial: https://github.com/mobz/elasticsearch-head
ddocker pull mobz/elasticsearch-head:5
Ejecutar contenedor
docker run -d --name es_admin -p 9100:9100 mobz/elasticsearch-head:5
Acoplable inicio Redis
docker run -p 6379:6379 --name redis -v /docker/redis/redis.conf:/etc/redis/redis.conf -v /docker/redis/data:/data -d redis redis-server /etc/redis/redis.conf
explicación
> docker run redis # 从redis镜像运行容器
-p 6379:6379 # 映射本地6379端口到容器6379端口,前为本地端口
--name redis # 设置容器名称为redis,方便以后使用docker ps进行管理
-v /docker/redis/redis.conf:/etc/redis/redis.conf # 关联本地/docker/redis/redis.conf文件到容器中/etc/redis/redis.conf,同样,前为本地
-v /docker/redis/data:/data # 关联本地/docker/redis/data到容器内/data目录,此为存放redis数据的目录,为方便以后升级redis,而数据可以留存
-d # 后台启动,使用此方式启动,则redis.conf中daemonize必须设置为no,否则会无法启动
redis-server /etc/redis/redis.conf # 在容器内启动redis-server的命令,主要是为了加载配置
docker run --name redis_zl -p 6379:6379 -d redis --requirepass "密码"
Acoplable inicio RabbitMQ
docker pull rabbitmq:management
corrida
docker run -d --hostname my-rabbit --name rabbit -p 8080:15672 rabbitmq:management
docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
-Hostname: Host nombre especificado contenedor
-nombre: Especifica el nombre del contenedor
-p: El número de puerto asignado al mq locales
inicio alternativo y conjunto de usuario y contraseña
docker run -d --hostname my-rabbit --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin -p 15672:15672 -p 5672:5672 -p 25672:25672 -p 61613:61613 -p 1883:1883 rabbitmq:management
15672: consola número de puerto
5672: número de puerto de acceso a aplicaciones
Un recordatorio, si se apaga el ordenador cuando no se detiene el inicio del contenedor, habrá casos inaccesibles 15672 en ventana acoplable puesta en marcha de nuevo, a continuación, sólo detener y retirar el contenedor, y luego reiniciar un cargador de muelle, vuelva a ejecutar el comando para iniciar una RabbitMQ contenedor .
Acoplable inicio kafka y cuidador del zoológico
docker pull wurstmeister/kafka
docker pull wurstmeister/zookeeper
Inicio cuidador del zoológico
docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
docker run -d --name kafka \
-p 9092:9092 \
-e KAFKA_BROKER_ID=0 \
-e KAFKA_ZOOKEEPER_CONNECT=172.16.65.243:2181 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://172.16.65.243:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
Acoplable inicio Nginx
docker pull nginx
docker images | grep nginx
docker run --name nginx -p 80:80 -d nginx
docker exec -it nginx bash
Acoplable inicio MongoDB
sudo docker pull mongo
sudo docker run --name some-mongo -p 27017:27017 -d mongo --auth
docker exec -it some-mongo bash
- Inicio mongo
mongo
- conmutador
use admin
Agregar usuarios y privilegios
db.createUser({ user: "root", pwd: "root", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
Gato
docker images #查看所有镜像
docker image tomcat:7 #查看REPOSITORY为tomcat:7的镜像
docker run -d --name tomcat -p 8081:8080 tomcat:7