安装PECL所需的依赖库:yum install php-pear php-devel
关闭防火墙:
sudo systemctl stop firewalld
sudo systemctl disable firewalld
安装Docker:
yum install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
运行redisinsight:
docker run -d --name redisinsight -v redisinsight:/db -p 8005:8001 redislabs/redisinsight
安装dnmp:
Github仓库:https://gitee.com/advance/dnmp
yum install -y git
mkdir /data
git clone https://github.com/yeszao/dnmp.git
sudo gpasswd -a ${USER} docker
cd dnmp
cp env.sample .env
cp docker-compose.sample.yml docker-compose.yml
docker-compose up
如果开启其它扩展(这里添加redis示例):
yum install redis vi .env
演示开启redis:
PHP_EXTENSIONS=pdo_mysql,mysqli,mbstring,gd,curl,opcache,redis
vi docker-compose.yml
把redis这项及以下的代码前面的#注释删除掉来开启:
redis:
image: redis:${REDIS_VERSION}
container_name: redis
ports:
- "${REDIS_HOST_PORT}:6379"
volumes:
- ${REDIS_CONF_FILE}:/etc/redis.conf:ro
- ${DATA_DIR}/redis:/data/:rw
restart: always
entrypoint: ["redis-server", "/etc/redis.conf"]
environment:
TZ: "$TZ"
networks:
- default
执行:
docker-compose build php docker-compose up -d
演示开启supervisor:
vi docker-compose.yml
把supervisor这项及以下的代码前面的#注释删除掉来开启:
supervisor:
build:
context: ./services/supervisor
args:
ALPINE_VERSION: alpine:${ALPINE_VERSION}
TZ: "$TZ"
CONTAINER_PACKAGE_URL: ${CONTAINER_PACKAGE_URL}
container_name: supervisor
ports:
- "${SUPERVISOR_HOST_PORT_C}:9001"
volumes:
- ${SOURCE_DIR}:/www/:rw
- ${SUPERVISOR_LOG}:/var/log/supervisor/:rw
- ${SUPERVISOR_CONFIG}:/etc/supervisor/conf.d/:rw
- ${SUPERVISOR_CONF_FILE}:/etc/supervisor/supervisord.conf:ro
command:
- /bin/sh
- -c
- |
supervisord -n -c /etc/supervisor/supervisord.conf
restart: always
cap_add:
- SYS_PTRACE
networks:
- default