docker 实用技巧

docker操作
docker network create xx #创建网络
docker ps -a -q | xargs docker rm #一键删除所有容器
docker run -idt -p 宿主机端口:容器端口 -v /宿主机目录:/容器目录 --network=容器网路 --restart=always --name 容器名称  镜像
docker inspect 容器id #查看容器详情,可以查看网络,id,镜像,环境变量,磁盘挂载等等
docker-compose 操作
docker-compose -f xx.yml up -d  #根据某个docker-compose文件创建容器
docker-compose -f xx.yml down #根据某个docker-compose文件删除容器
docker-compose -f xx.yml services #查看可以当前文件可以部署的服务
docker-compose -f xx.yml up mysql -d #部署某个指定的服务

docker compose 部署redis,mysql,mongodb,zookeeper,kafka,gitlab,postgres,clickhouse

version: '2'
services:
  redis:
    image: redis:latest
    container_name: redis
    restart: always
    command: redis-server --requirepass P@ss1234
    ports:
      - "16379:6379"
    privileged: true
  zookeeper:
    image: zookeeper
    container_name: zookeeper
    restart: always
    ports:
      - "12181:2181"
  kafka:
    image: wurstmeister/kafka
    container_name: kafka
    restart: always
    ports:
      - "19092:9092"
    environment:
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.0.1:19092
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
  gitlab:
    image: gitlab/gitlab-ce
    hostname: gitlab
    container_name: gitlab
    restart: always
    ports:
      - "8443:443"
      - "8081:80"
      - "2222:22"
    environment:
      GITLAB_ROOT_PASSWORD: password
      GITLAB_USERNAME: config
      GITLAB_PASSWORD: password
    volumes:
      - /home/deployment/gitlab/config:/etc/gitlab
      - /home/deployment/gitlab/logs:/var/log/gitlab
      - /home/deployment/gitlab/data:/var/opt/gitlab
      - /etc/localtime:/etc/localtime:ro
  postgres:
    image: postgres:12-alpine
    container_name: postgres
    restart: always
    ports:
      - "15432:5432"
    environment:
      POSTGRES_DB: mydb
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
    volumes:
      - /home/deployment/postgres/data:/var/lib/postgresql/data
      - /etc/localtime:/etc/localtime:ro
  mysql:
    image: mysql:5.7
    container_name: mysql
    restart: always
    privileged: true
    ports:
      - "13306:3306"
    environment:
      MYSQL_ROOT_PASSWORD: password
    volumes:
      - /home/deployment/mysql/data:/var/lib/mysql
      - /etc/localtime:/etc/localtime:ro
      - /home/deployment/mysql/conf:/etc/mysql/conf.d
      - /home/deployment/mysql/logs:/var/log/mysql
      - /home/deployment/mysql/initsql/init.sql:/docker-entrypoint-initdb.d/init.sql
  clickhouse:
    image: yandex/clickhouse-server
    container_name: clickhouse
    restart: always
    privileged: true
    ports:
      - "18123:8123"
    volumes:
      - /home/deployment/clickhouse/data:/var/lib/clickhouse
      - /etc/localtime:/etc/localtime:ro
      - /home/deployment/clickhouse/initsql/init.sql:/docker-entrypoint-initdb.d/init.sql
  mongo:
    image: mongo:4.4
    container_name: mongo
    restart: always
    privileged: true
    ports:
      - "27017:27017"
    environment:
      MONGO_INITDB_ROOT_USERNAME: admin
      MONGO_INITDB_ROOT_PASSWORD: password
    volumes:
      - /home/deployment/mongo/data:/data/db

networks:
  default:
    external:
      name: deploymentnetwork #网络

/docker-entrypoint-initdb.d/init.sql 为需要执行的初始化语句:

## init.sql的内容
create database IF NOT EXISTS db1 DEFAULT CHARACTER SET utf8;
create database IF NOT EXISTS db2 DEFAULT CHARACTER SET utf8;
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值