一贯的风格首先安装 Docker:
curl -sSL https://get.docker.com/ | sh
然后安装 Compose:
curl -L https://github.com/docker/compose/releases/download/1.10.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose
这样我们的基本工具就搞定了。
接下来我们会拉取几个镜像,默认的镜像仓库在海外,速度不理想,所以我们使用国内的镜像源,这里以中科大的为例:
首先编辑文件 /etc/docker/daemon.json,在该配置文件中加入下面内容(没有该文件的话建一个):
{ "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"] }
保存之后最好重启一下 Docker 服务,这样就可以使用国内镜像源拉取镜像了。
首先为Nextcloud建立一个独立的容器网络:
docker network create nextcloud
接下来新建一个文件夹,名字随便,这里演示为cloud,然后在文件夹里面新建一个文件,文件名为Caddyfile,文件内容如下:
example.com { proxy / 233.233.233.233:2333 { proxy_header Host {host} proxy_header X-Real-IP {remote} proxy_header X-Forwarded-Proto {scheme} } log /var/log/caddy.log gzip }
因为使用Caddy部署应用不需要花费诸位太多时间去配置Web服务器环境,所以我这里使用Caddy,实际上如果你喜欢Nginx,自己修改下面的配置就好了。Caddy适合不想写配置或者懒得动手申请SSL的读者。
接下来再新建一个文件,名为docker-compose.yml,文件的内容如下:
version: '2' services: db: container_name: cloud_db image: mysql volumes: - "./data/cloud/mysql:/var/lib/mysql" restart: always environment: MYSQL_ROOT_PASSWORD: 这里填写你的密码 MYSQL_DATABASE: nextcloud app: container_name: cloud_app depends_on: - db image: nextcloud volumes: - ./data/cloud/config:/var/www/html/config - ./data/cloud/data:/var/www/html/data - ./data/cloud/apps:/var/www/html/apps links: - db ports: - "2333:80" restart: always cron: container_name: cloud_cron image: nextcloud links: - db volumes_from: - app user: www-data entrypoint: | bash -c 'bash -s <<EOF trap "break;exit" SIGHUP SIGINT SIGTERM while /bin/true; do /usr/local/bin/php /var/www/html/cron.php sleep 900 done EOF' restart: always web: container_name: cloud_web image: abiosoft/caddy volumes: - ./Caddyfile:/etc/Caddyfile - ~/.caddy:/root/.caddy ports: - 80:80 - 443:443 restart: always networks: default: external: name: nextcloud
保存文件之后,一句话启动它~~
docker-compose up -d
上面文件内容只有那个密码是需要你改的,其他不变即可。
稍微去喝杯茶,一会回来你就可以看到Nextcloud部署成功了。
来自于23.227.193.227美国伊利诺斯芝加哥网友评分!
来自于42.119.148.32越南胡志明市网友评分!
来自于85.237.206.197英国英格兰伦敦网友评分!
来自于60.246.51.76澳门特别行政区网友评分!
来自于43.249.50.166印度网友评分!
来自于106.113.13.179河北省石家庄市 电信网友评分!
来自于101.94.224.43上海市上海市 电信网友评分!
来自于124.126.3.110北京市北京市 电信网友评分!
来自于106.87.116.73重庆市重庆市 电信网友评分!
来自于49.157.47.254菲律宾网友评分!
来自于183.200.16.191山西省太原市 移动网友评分!
来自于111.58.68.171广西壮族自治区贵港市 移动网友评分!
来自于94.66.59.128希腊网友评分!
来自于94.66.59.128希腊网友评分!
来自于103.151.173.102亚太地区网友评分!
来自于39.109.191.32新加坡网友评分!
来自于106.87.116.73重庆市重庆市 电信网友评分!
来自于106.87.116.73重庆市重庆市 电信网友评分!
来自于153.3.60.41江苏省南京市 联通网友评分!
来自于3.112.41.223日本东京网友评分!
来自于104.251.178.50美国德克萨斯达拉斯网友评分!
来自于104.251.178.50美国德克萨斯达拉斯网友评分!
来自于111.55.11.245中国 移动网友评分!
来自于103.205.179.169巴基斯坦网友评分!
来自于183.200.16.191山西省太原市 移动网友评分!
来自于183.200.16.191山西省太原市 移动网友评分!
来自于176.97.73.32英国网友评分!
来自于46.232.121.89俄罗斯莫斯科网友评分!
来自于114.45.39.108台湾省台北市网友评分!
来自于164.155.132.208南非网友评分!