Docker安装nextcloud私人网盘

1、编写Dockerfile

不用官方的nextcloud,是因为网页文件在docker里,修改不方便。
此篇文章没有安装mysql.mysql需要用户自己安装。

FROM ubuntu:19.10
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
RUN echo 'Asia/Shanghai' >/etc/timezone
WORKDIR /
RUN apt update \
&& apt install  wget -y \
&& apt install apache2 php --fix-missing -y \
&& apt install php-zip php-gd php-mbstring php-xml php-curl php-mysql --fix-missing -y \
&& /etc/init.d/apache2 restart \
RUN touch /start.sh \
&& echo "#!/bin/bash" >> /start.sh \
&& echo "/etc/init.d/apache2 start">> /start.sh \
&& chmod +x /start.sh
CMD ["sh", "-c", "./start.sh;bash"] 

直接用docker 构建镜像

docker build -t nextcloud:1.0 .

2、准备nextcloud文件

mkdir /nextcloud       #在/目录新建一个nextcloud文件夹,存放nextcloud文件。
cd /nexctcloud     #进入目录
wget https://download.nextcloud.com/server/releases/nextcloud-17.0.2.zip
#下载nextcloud
unzip nextcloud.zip                #解压文件
#如果提示没有unzip 请安装unzip
apt install unzip -y       #ubuntu/debian
yum install unzip -y       #centos
解压之后,默认是有个nextcloud文件夹的,我们把下面的目录 复制出来。
mv nextcloud/* ./      
mkdir /nextcloud/data    #新建一个data文件夹,储存上传的文件
chown -R www-data:www-data /nextcloud/
chmod -R 775 /nextcloud/data/    #给予权限。

3、开启容器

docker run -idt -p 80:80 -v /nextcloud:/var/www/html --name nextcloud nextcloud:1.0

然后在浏览器里打开ip就行。

Author: 佛西

Leave a Reply

Your email address will not be published.