本人的设备是OragePi4
,安装的是基于debian
的Armbian Buster Server
,树莓派,云主机等可以安装对应的版本。
因为默认的源是国外的,下载速度非常慢,建议修改为国内的源。这里使用了清华的源,其他的源,比如科大的也不错。
sudo cp /etc/apt/source.list /etc/apt/source.list.backup
source.list
文件中源信息deb https://mirrors.tuna.tsinghua.edu.cn/debian buster main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian buster-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian buster-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security/ buster/updates main contrib non-free
/source.list.d/armbian.list
文件中的源信息deb https://mirror.tuna.tsinghua.edu.cn/armbian/ buster main buster-utils buster-desktop
注意:请选择自己设备及发行版本对应的国内源。
sudo apt-get update
sudo apt-get upgrade
docker
这里使用最简单的安装docker
的方式:
docker
自动安装脚本sudo curl https://get.docker.com/ > ./docker_install.sh
sudo sh docker_install.sh –mirror Aliyun
注意:在安装过程中因为源的更新问题(比如使用的源不稳定,不完善),可能出现如下问题:
E: Sub-process /usr/bin/dpkg returned an error code (1)
出现此问题的原因一般是某个模块安装失败,可搜索自行解决。
docker
运行状态sudo systemctl status docker
如果显示
active (running)
说明运行成功
docker
国内源/etc/docker/daemon.json
sudo vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]
}
这里添加的是科大的源,也可以添加其他国内源,比如阿里等。
也可以多添加几个源
{
"registry-mirrors": [
"https://md4nbj2f.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
"http://registry.docker-cn.com"
]
}
docker
安装mariadb
数据库执行以下命令
docker run \
--name nextcloud_db -d -p 127.0.0.1:3306:3306 \
--restart=always \
-e MYSQL_ROOT_PASSWORD=nextcloud \
-e MYSQL_DATABASE=nextcloud \
-e MYSQL_USER=nextcloud \
-e MYSQL_PASSWORD=nextcloud \
-v /data/nextcloud_db/mariadb:/var/lib/mysql \
mariadb:latest
说明:执行后会下载mariadb数据库容器镜像,然后创建名为
nextcloud_db
的容器并在其中创建了名为nextcloud
的数据库,还设置了数据库的用户名密码等,-v
参数是指映射容器中数据库到本地
docker
安装nextcloud
执行如下命令
docker run \
--name nextcloud -d -p 1203:80 \
--restart=always \
--link nextcloud_db:nextcloud_db \
-e MYSQL_DATABASE=nextcloud \
-e MYSQL_USER=nextcloud \
-e MYSQL_PASSWORD=nextcloud \
-e MYSQL_HOST=nextcloud_db \
-v /data/nextcloud:/var/www/html \
nextcloud:latest
说明:执行后会下载
nextcloud
容器镜像,然后创建名为nextcloud
的容器,并连接数据库的容器nextcloud_db
,并使用已创建的数据库nextcloud
,-p 1203:80
是设置访问的映射端口,-v
参数是指映射容器中数据库到本地。
nextcloud
在浏览器中输入设备的IP加端口访问,进入登录页面创建管理员账号,比如:
http://192.168.1.205:1203
默认nextcloud
是会限制访问的域名或IP的,可以在/data/nextcloud/config/config.php
中的trusted_domains
项中添加允许的域名或IP,如果需要放开限制可在其中添加如下信息:
1 => preg_match('/cli/i',php_sapi_name())?'127.0.0.1':$_SERVER['SERVER_NAME'],