亲测可用的一个swoft docker-compose文件集成swoft,mysql,redis

2018-09-28 12:40

阅读:470

为了方便使用swoft,特意记录一下,官方文档中没有写mysql和redis,初次使用docker还不太熟悉。

version: '3'

services:
    swoft:
       image: swoft/swoft:latest
       ports:
         - "80:80"
       volumes:
         - ./:/var/www/swoft
       links:
           - mysql
           - redis
       stdin_open: true 
       tty: true
       privileged: true
#       entrypoint: ["php", "/var/www/swoft/bin/swoft", "start"]
       entrypoint: /bin/bash



    mysql:
      image: mysql
      container_name: mysql
      ports:
        - "3306:3306"
      volumes:
        - ./mysql:/var/lib/mysql
      environment:
        TIMEZONE: Asia/Shanghai
        MYSQL_ROOT_PASSWORD: root



    redis:
      restart: always
      image: redis
      container_name: redis
      ports:
        - "6379:6379"
      volumes:
          - ./data/redis:/data
          - ./logs/redis:/var/log/redis
      command: redis-server --appendonly yes

swoft,mysql,redis为单独的容器,

如果对docker还不熟悉,可继续往下看:

要让swoft使用mysql和redis关键点在docker-compose配置中的links

       links:
           - mysql
           - redis

这样配置之后,在swoft/config/properties中配置,IP地址变为redis

'redis'     => [
    'name'        => 'redis',
    'uri'         => [
        'redis:6379',
        'redis:6379',
    ],
    'minActive'   => 8,
    'maxActive'   => 8,
    'maxWait'     => 8,
    'maxWaitTime' => 3,
    'maxIdleTime' => 60,
    'timeout'     => 8,
    'db'          => 1,
    'prefix'      => 'redis_',
    'serialize'   => 0,
],

如此便可使用。


评论


亲,登录后才可以留言!

热门文章

推荐文章

最新文章

置顶文章