在使用本教程前,建议您对docker进行一些基本的了解,知道一些简单的命令,比如:
docker images docker ps –a docker start docker stop docker rm docker rmi
不了解docker的可以谷歌一下这些命令快速了解,也可以看官方的docker教程。
docker官方安装教程:https://store.docker.com/search?type=edition&offering=community
我贴一下Ubuntu系统的安装方式,依次输入下列命令:
sudo apt–get –y install apt–transport–https ca–certificates curl curl –fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add – sudo add–apt–repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable” sudo apt–get update sudo apt–get –y install docker–ce
docker-compose是定义和运用docker的一种工具,使用下列命令安装:
apt install docker–compose
安装完成后,新建docker-compose.yml文件:
vim docker–compose.yml
然后把下列内容复制粘贴,注意这里我选用的是wonderfall的版本,他的版本star数最多,比官方的新,另外注意,修改pwd为自己的密码:
nextcloud: image: wonderfall/nextcloud links: – nextcloud–db:nextcloud–db environment: – UID=1000 – GID=1000 – UPLOAD_MAX_SIZE=10G – APC_SHM_SIZE=128M – OPCACHE_MEM_SIZE=128 – CRON_PERIOD=15m – TZ=Aisa/Shanghai – ADMIN_USER=admin – ADMIN_PASSWORD=pwd – DOMAIN=localhost – DB_TYPE=mysql – DB_NAME=nextcloud – DB_USER=nextcloud – DB_PASSWORD=pwd – DB_HOST=nextcloud–db volumes: – /docker/nextcloud/data:/data – /docker/nextcloud/config:/config – /docker/nextcloud/apps:/apps2 – /docker/nextcloud/themes:/nextcloud/themes ports: – 127.0.0.1:8888:8888/tcp nextcloud–db: image: mariadb:10 volumes: – /docker/nextcloud/db:/var/lib/mysql environment: – MYSQL_ROOT_PASSWORD=pwd – MYSQL_DATABASE=nextcloud – MYSQL_USER=nextcloud – MYSQL_PASSWORD=pwd
然后在docker—compose.yml所在文件夹里,输入以下命令:
docker–compose up –d
这时候docker版本的nextcloud就已经安装好了,端口是127.0.0.1:8888,我们接下来利用nginx反代这个端口,并且加上https,从而能让外网安全的访问。
apt install nginx
apt install letsencrypt
注意替换域名
letsencrypt certonly —webroot –w /var/www/html —domain “abc.example.com”
可以修改默认的,也可以新建一个配置文件,我这里直接修改默认的
vim /etc/nginx/sites–available/default
删掉里面的内容,复制粘贴进这个,注意你的letsencrypt生成的证书路径对不对,一般只需要改一下domain就行了:
server { listen 80; server_name abc.example.com; return 301 https://$host$request_uri; } server { server_name nextpan.net www.nextpan.net; listen 443 ssl http2; ssl on; ssl_certificate /etc/letsencrypt/live/abc.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/abc.example.com/privkey.pem; include /etc/nginx/conf/ssl_params.conf; client_max_body_size 10G; location / { proxy_redirect off; proxy_pass http://127.0.0.1:8888; proxy_set_header Host $http_host; } location = /.htaccess { return 404; } }
重启nginx:
service nginx restart
然后输入自己的域名就可以直接登陆了。
如果想更新,只需要删掉nextcloud和mariadb的container,重新docker-compose up -d就可以了。
Docker中安装DB2的详细教程和DBVisualize的安装教程