bashcurl -fsSL https://get.docker.com -o get-docker.sh&&sudo sh get-docker.sh
bashcurl -L https://github.com/docker/compose/releases/download/v2.17.3/docker-compose-linux-aarch64 | sudo tee /usr/local/bin/docker-compose >/dev/null
bashcurl -L https://github.com/docker/compose/releases/download/v2.17.3/docker-compose-linux-x86_64 | sudo tee /usr/local/bin/docker-compose >/dev/null
bashsudo chmod +x /usr/local/bin/docker-compose
bashdocker -v && docker-compose -v
完成以上步骤后,您可以在Debian 11上使用Docker Compose来搭建独角数卡。
mkdir Shop && cd Shop mkdir storage uploads chmod 777 storage uploads
touch env.conf chmod -R 777 env.conf
2.编辑docker-compose
yamlversion: "3"
services:
web:
image: stilleshan/dujiaoka
environment:
# - INSTALL=false
- INSTALL=true
# - MODIFY=true
volumes:
- ./env.conf:/dujiaoka/.env
- ./uploads:/dujiaoka/public/uploads
- ./storage:/dujiaoka/storage
ports:
- 8090:80 # 8090可以改成任意服务器没有使用过的端口,80不要修改
restart: always
networks:
- dujiaoka_network # 使用定义好的网络
db:
image: mariadb:focal
restart: always
environment:
- MYSQL_ROOT_PASSWORD=changeyourpassword
- MYSQL_DATABASE=dujiaoka
- MYSQL_USER=dujiaoka
- MYSQL_PASSWORD=changeyourpassword
volumes:
- ./mysql:/var/lib/mysql
networks:
- dujiaoka_network # 使用定义好的网络
redis:
image: redis:alpine
restart: always
volumes:
- ./redis:/data
networks:
- dujiaoka_network # 使用定义好的网络
nginx-proxy: # 反向代理服务
image: 'jc21/nginx-proxy-manager:latest' # 镜像名称及标签
restart: unless-stopped # 不重启容器除非手动停止
ports:
- '80:80' # 映射本地80端口到容器80端口
- '81:81' # 映射本地81端口到容器81端口
- '443:443' # 映射本地443端口到容器443端口
volumes:
- ./data:/data # 数据文件挂载
- ./letsencrypt:/etc/letsencrypt # SSL证书文件挂载
networks:
- dujiaoka_network # 使用定义好的网络
# 定义网络
networks:
dujiaoka_network: # 网络名称
.env
文件iniAPP_NAME=咕咕的小卖部 #网站名称
APP_ENV=local
APP_KEY=base64:rKwRuI6eRpCw/9e2XZKKGj/Yx3iZy5e7+FQ6+aQl8Zg=
APP_DEBUG=true
APP_URL=https://你的域名
LOG_CHANNEL=stack
# 数据库配置
DB_CONNECTION=mysql
DB_HOST=db
DB_PORT=3306
DB_DATABASE=dujiaoka
DB_USERNAME=dujiaoka
DB_PASSWORD=changeyourpassword
# redis配置
REDIS_HOST=redis
REDIS_PASSWORD=
REDIS_PORT=6379
BROADCAST_DRIVER=log
SESSION_DRIVER=file
SESSION_LIFETIME=120
# 缓存配置
# file为磁盘文件 redis为内存级别
# redis为内存需要安装好redis服务端并配置
CACHE_DRIVER=redis
# 异步消息队列
# sync为同步 redis为异步
# 使用redis异步需要安装好redis服务端并配置
QUEUE_CONNECTION=redis
# 后台语言
## zh_CN 简体中文
## zh_TW 繁体中文
## en 英文
DUJIAO_ADMIN_LANGUAGE=zh_CN
# 后台登录地址
ADMIN_ROUTE_PREFIX=/admin
# 是否开启https (前端开启了后端也必须为true)
# 后台登录出现0err或者其他登录异常问题,大概率是开启了https而后台没有开启,把下面的false改为true即可
ADMIN_HTTPS=true
bashsudo docker-compose up -d
bashsudo docker-compose down
Email: [email protected]
Password: changeme
cd /root/data/docker_data/shop docker-compose down cp -r /root/data/docker_data/shop /root/data/docker_data/shop.archive # 万事先备份,以防万一 docker-compose pull docker-compose up -d # 请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止;docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,完全没有必要浪费那些时间。 docker image prune # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像
提示:
WARNING! This will remove all dangling images. Are you sure you want to continue? [y/N]
输入 Y
回车即可
cd /root/data/docker_data/shop docker-compose down cd .. rm -rf /root/data/docker_data/shop # 完全删除映射到本地的数据
成功登录之后,我们填写信息,
注意数据库地址填db
,Redis填redis
填写完成后,点击保存。
提示默认的账户名和密码都是admin
此时,我们先停止容器。
cd /root/shop docker-compose down
接着我们修改一下docker-compose.yml
以及env.conf
里面的内容。
分别把 - INSTALL=true
改成 - INSTALL=false
把 APP_DEBUG=true
改成 APP_DEBUG=false
之后运行:
docker-compose up -d
然后在域名后面加上/admin,输入默认的账户密码admin就可以正常登录后台了!
记得改一下用户名和密码!
本文作者:我本无罪
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!