Docker搭建nextcloud
安装 Docker 环境添加镜像源这里选择的是国内上海大学开源镜像站提供的 docker-ce源,多快好省。sudo tee -a /etc/apt/sources.list.d/docker.list << EOFdeb [arch=amd64] https://mirrors.shu.edu.cn/docker-ce/linux/ubuntu/ xenial sta
·
安装 Docker 环境
-
添加镜像源这里选择的是国内 上海大学开源镜像站提供的
docker-ce
源,多快好省。sudo tee -a /etc/apt/sources.list.d/docker.list << EOF deb [arch=amd64] https://mirrors.shu.edu.cn/docker-ce/linux/ubuntu/ xenial stable
EOF
-
-
添加镜像源
-
添加可信任的 GPG 公钥
sudo apt-key adv --keyserver=hkp://keyserver.ubuntu.com
更新本地软件缓存列表sudo apt update
安装 Docker-CE 及其依赖sudo apt install -y docker-ce
将普通用户添加到docker
组,这样普通用户也能使用docker
命令。sudo usermod -aG docker $(whoami)
执行完成后请退出终端并重连使配置生效。添加网易云 Docker 镜像加速器curl -sSL https://get.daocloud.io/daotools/set_mirror.sh
重启 Docker 服务sudo service docker restart
检查 Docker 是否安装成功sudo docker info
docker-compose
是一个由Docker
官方提供的管理工具,适合一个应用需要多个容器配合统一管理,进一步简化应用部署、应用升级步骤。-
安装基础组件
sudo apt install -y python3 python3-pip sudo pip3 install -U pip
安装 docker-composesudo pip3 install docker-compose
安装 Nextcloud
-
编写 docker-compose.yml 文件
docker-compose
的管理主要依赖于一个名为docker-compose.yml
的yaml
文件来进行管理,当然这个文件也可以以任何别的名称并以-f 文件名
的方式来启用,但必须是符合yaml
格式和Docker
官方定义的字段和方式。以下为本实验所需的内容,其中用到了mariadb
官方提供的数据库容器 和Nextcloud
官方提供的应用容器。volumes:
- /home/ubuntu/nextcloud/www:/var/www/html db :image : mariadbrestart : alwaysvolumes :-/home/ubuntu/nextcloud/db:/var/lib/mysqlenvironment :- MYSQL_ROOT_PASSWORD=root- MYSQL_PASSWORD=nextcloud- MYSQL_DATABASE=nextcloud- MYSQL_USER=nextcloudapp :image : nextcloudrestart : alwaysports :- 80:80links :- db volumes :
- /home/ubuntu/nextcloud/www:/var/www/html
启动容器以下命令即可开始拉取所需容器的镜像文件并根据docker-compose.yml
文件配置好本地文件夹挂载和端口映射。(本步骤由于需要拉取镜像,所以需要 3 ~ 5 分钟时间。)sudo docker-compose up -d
应用初始化配置访问 http://119.29.16.152 设置管理员用户名和密码(比如admin
和admin@tencent
),数据目录默认即可,数据库信息填写如docker-composer.yml
中所示,数据库主机名填db
(配置文件中的数据库应用名)。 -
-
-
所有初始化配置填写完毕之后,等待大约半分钟左右安装完成就可以看见 Nextcloud 的主目录页面。
-
-
更新应用至最新版
sudo docker pull nextcloud sudo docker-compose down && sudo docker-compose up -d
你将会发现虽然销毁了原来的容器并且新建了容器,但是并不需要重新初始化应用的配置,这也正是 Docker 管理应用的方便之处。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
已为社区贡献1条内容
所有评论(0)