本篇基于docker和docker-compose联合部署,需要读者有点docker部署和compose编写的经验,本文章已尽量通俗的解释,相关质量借鉴于网络资料
安装docker-compose
可以到 github 下载二进制文件安装
执行过程
# 下载docker-compose
root@docker-debian:~# wget https://github.com/docker/compose/releases/download/v2.14.0/docker-compose-linux-x86_64
docker-compose-linux- 100%[=======================>] 42.84M 5.39MB/s in 12s
2022-12-04 10:40:16 (3.46 MB/s) - ‘docker-compose-linux-x86_64’ saved [44924928/44924928]
# 修改名字,去除多余字符
root@docker-debian:~# mv docker-compose-linux-x86_64 docker-compose
# 添加权限,允许执行
root@docker-debian:~# ls -l docker-compose
-rw-r--r-- 1 root root 44924928 Dec 3 03:26 docker-compose
root@docker-debian:~# chmod u+x docker-compose
root@docker-debian:~# ls -l docker-compose
-rwxr-xr-x 1 root root 44924928 Dec 3 03:26 docker-compose
# 移动到可执行目录,方便命令调用
root@docker-debian:~# mv docker-compose /usr/local/bin
docker-compose方式部署nextcloud个人网盘服务,端口8888。
注意点:数据存储位置的规划
环境配置过程
root@docker-debian:~# mkdir -p /opt/nextcloud/
root@docker-debian:~# mkdir -p /usr/local/data/nextcloud
root@docker-debian:~# cd /opt/nextcloud/
root@docker-debian:/opt/nextcloud# vim docker-compose.yml
nextcloud的docker-compose.yml文件
---
# nextcloud.yml
version: "3.0"
services:
nextcloud:
container_name: nextcloud
image: nextcloud:latest
volumes:
- /usr/local/data/nextcloud/storage:/var/www/html/data
ports:
- 8888:80
restart: always
docker-compose.yml的文件解释
代码 |
解释 |
--- |
YAML 格式的一部分, 表明一个文件的开始 |
# nextcloud.yml |
注释,对文件的某些功能和命令的介绍信息 |
version |
compose编写语法的版本 |
services |
服务是一组容器支持,在服务中定义容器 |
nextcloud |
容器服务组件的名称 |
container_name |
容器名称 |
image |
容器使用的镜像 |
volumes |
映射卷 |
ports |
端口映射 |
restart |
定义平台将在容器终止时应用的策略 |
启动docker-compose
root@docker-debian:/opt/nextcloud# docker-compose up -d
参数 |
备注 |
-d |
后台执行该服务,避免日志刷屏,保持屏幕清爽 |
验证
安装portainer或potainer-ce,开机自启。端口默认
环境配置过程
root@docker-debian:~# mkdir /opt/portainer-ce
root@docker-debian:~# cd /opt/portainer-ce
root@docker-debian:/opt/portainer-ce# vim docker-compose.yml
potainer-ce的docker-compose.yml文件
---
version: "3.0"
services:
portainier:
container_name: portainerUI
image: portainer/portainer-ce:latest
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock:rw
ports:
- 9000:9000
启动docker-compose
root@docker-debian:/opt/portainer-ce# docker-compose up -d
验证