美文网首页
比较全乎的docker lnmp ymal

比较全乎的docker lnmp ymal

作者: 蛐蛐儿阳 | 来源:发表于2021-09-17 14:01 被阅读0次
version: "3"
# 这里用官方php镜像, 数据库改mysql而不是mariadb
# goodluck 大坑
# 1, 一个是证书key, 我做了软连接,ng怎么也加载不到文件
# 2, 一个是 file not find , ng报错
# FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 47.57.241.107, server: api.bbdrone.com, request
# 在配置文件里改 绝对路径就好了 fastcgi_param   SCRIPT_FILENAME $root$fastcgi_script_name;
services:
    nginx:
        image: nginx
        volumes:
            - ./home/nginx/local:/etc/nginx/conf.d
            - ./home:/home
            - ./www:/www
        networks:
            - lnmp
        expose:
            - "80"
            - "443"
            - "8111"
            - "8112"
            - "8113"
        ports:
            - "8110:80"
            - "8111:8111"
            - "8112:8112"
            - "8113:8113"
            - "444:443"
        user: root
        privileged: true
        depends_on:
            - php
        environment:
            - TZ=Asia/Shanghai

    # 1, php需要自己安装扩展, 得进入容器, 这个直接 command 没有成功
    # docker exec -it bf88a8de16a5 /bin/bash
    #   mysql扩展
    # docker-php-ext-install pdo_mysql
    # 2, gd 库就更复杂, 注意先配置,再安装才能生效,先1,后2
    # 容器中
    # apt update  #更新软件源
    # apt install libwebp-dev libfreetype6-dev libmcrypt-dev libpng-dev libjpeg-dev libpng-dev sendmail zlib1g-dev #安装各种库
    # (1)docker-php-ext-configure gd --with-webp=/usr/include/webp --with-jpeg=/usr/include --with-freetype=/usr/include/freetype2
    # (2)docker-php-ext-install gd   #编译安装
    # php -m | grep gd
    # 这块有个坑 7.4  --with后参数变了 phpinfo打印gd, 
    # 下面这样重新配置才可以 这样配置后 freetype 才安装成功, tp6验证码才可用
    # docker-php-ext-configure gd --with-webp=/usr/include/webp --with-jpeg=/usr/include --with-freetype=/usr/include/freetype2
    # 3, redis 扩展安装
    # pecl install redis-4.0.1 && docker-php-ext-enable redis
    # 提示输入后,输入no
    # 4, mongodb
    # pecl install mongodb
    # extension=”mongodb.so”
    # 5, 安装 ps
    # apt-get install procps
    # 6, 安装crontab
    # apt-get install cron
    # 7, 安装守护进程
    # apt-get install supervisor

    php:
        image: php:7.3-fpm
        volumes:
            - ./www:/www
            - ./home:/home
        networks:
            - lnmp
        user: root
        privileged: true
        depends_on:
            - mysql
        expose:
            - "9000"
            - "9001"
        ports:
            - "9001:9001"
        environment:
            - TZ=Asia/Shanghai

    mysql:
        image: mysql:5.6
        volumes:
            - ./data/mysql:/var/lib/mysql
        networks:
            - lnmp
        expose:
            - "3306"
        ports:
            - "3004:3306"
        environment:
            - TZ=Asia/Shanghai
            - "MYSQL_DATABASE=mybole"
            - "MYSQL_USER=admin"
            - "MYSQL_PASSWORD=admin123456"
            - "MYSQL_ROOT_PASSWORD=gly123456"
    redis:
        command: redis-server --requirepass dfdAde5L[9YasfafoNI(4aegdfdfdwda
        image: redis
        volumes:
            - ./data/redis:/data
        networks:
            - lnmp
        expose:
            - "6379"
        ports:
            - "6002:6379"
      # mongo服务
    mongo:
        image: mongo:4
        container_name: mongo
        privileged: true
        networks: [lnmp]
        expose: [27017]
        ports: ['27017:27017']
        volumes: [ './data/mongo:/data/db']
        restart: always

    elasticsearch:
        image: elasticsearch:7.8.0
        environment:
            - discovery.type=single-node
            - ES_JAVA_OPTS=-Xms512m -Xmx512m
        volumes:
            - ./data/elasticsearch/es.yml:/usr/share/elasticsearch/config/elasticsearch.yml
            - ./data/elasticsearch/data:/usr/share/elasticsearch/data
            - ./data/elasticsearch/log:/usr/share/elasticsearch/log
        networks:
            - lnmp
        expose:
            - "9200"
        ports:
            - "9200:9200"
networks:
    lnmp:

相关文章

网友评论

      本文标题:比较全乎的docker lnmp ymal

      本文链接:https://www.haomeiwen.com/subject/jvnjgltx.html