自行搭建全部开源的:代码管理、缺陷跟踪、项目管理、同步云盘(三)--NextCloud

前两节我们介绍了gitlab和meterphere,现在我给大家介绍自行搭建的私有云盘,这里需要提醒小伙伴们,同步云盘并不适合存放代码,同步的私有云盘主要放置一些你需要的文件,资料,ISO等,不适合存放代码。

私有云盘主要的作用是将PC机,工作机,手机连在一起,文件在几个设置之前进行共享。

这里我们介绍的私有云盘为nextcloud,我们以ubuntu20.04为操作系统,介绍具体的配置方法如下。

1、安装数据库环境

apt install apache2 mariadb-server libapache2-mod-php7.4

apt install php7.4-gd php7.4-mysql php7.4-curl php7.4-mbstring php7.4-intl

apt install php7.4-gmp php7.4-bcmath php-imagick php7.4-xml php7.4-zip php7.4-apcu 

apt install libmagickcore-6.q16-6-extra

2、安装Nextcloud。
步骤1.首先,通过apt在终端中运行以下以下命令,确保所有系统软件包都是最新的。
sudo apt update
sudo apt upgrade

步骤2.安装LAMP堆栈。
需要Ubuntu 20.04 LAMP服务器。如果您未安装LAMP,则可以在此处按照我们的指南进行操作。

步骤3.在Ubuntu 20.04上安装Nextcloud。
现在,我们下载最新版本的Nextloud(当前时间2020-03-03):
wget https://download.nextcloud.com/server/releases/nextcloud-23.0.2.zip
将Nextcloud存档解压缩到服务器上的文档根目录:
unzip nextcloud-23.0.2.zip
mv nextcloud /var/www/html
我们将需要更改一些文件夹权限:
chown -R www-data:www-data /var/www/html/nextcloud
chown -R www-data:www-data /data

步骤4.为Nextcloud配置MariaDB。
默认情况下,不会对MariaDB进行加固。您可以使用mysql_secure_installation脚本保护MariaDB 。您应该仔细阅读每个步骤,并在每个步骤下面仔细进行操作,这将设置root密码,删除匿名用户,禁止远程root登录以及删除测试数据库和对安全MariaDB的访问。
mysql_secure_installation
像这样配置它:
- Set root password? [Y/n] y
- Remove anonymous users? [Y/n] y
- Disallow root login remotely? [Y/n] y
- Remove test database and access to it? [Y/n] y
- Reload privilege tables now? [Y/n] y
接下来,我们将需要登录到MariaDB控制台并为Nextcloud创建数据库。运行以下命令:
mysql -u root -p
这将提示您输入密码,因此输入您的MariaDB根密码,然后按Enter。登录数据库服务器后,需要创建一个数据库以进行Nextcloud安装:
MariaDB [(none)]> CREATE DATABASE nextcloud;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost' IDENTIFIED BY '你的密码*';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> \q

步骤5.为Nextcloud配置Apache Web服务器。
在Apache中创建一个新的虚拟主机指令。例如,在虚拟服务器上创建一个名为“ nextcloud.conf”的新Apache配置文件:
touch /etc/apache2/sites-available/nextcloud.conf
ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf
nano /etc/apache2/sites-available/nextcloud.conf
添加以下行:
<VirtualHost *:80>
ServerAdmin admin@yourdomain.com
DocumentRoot "/var/www/html/nextcloud/"
ServerName your-domain.com
ServerAlias www.your-domain.com
<Directory "/var/www/html/nextcloud/">
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/apache2/your-domain.com-error_log
CustomLog /var/log/apache2/your-domain.com-access_log common
</VirtualHost>
重新启动Apache Web服务器,以便进行更改:
sudo a2enmod rewrite
sudo a2ensite nextcloud.conf
sudo systemctl restart apache2.service

步骤6.设置HTTPS,假如不用https此步可省略。
我们应该在Nextcloud上启用安全的HTTPS连接。我们可以从Let's Encrypt获得免费的TLS证书。从Ubuntu 20.04存储库安装Let's Encrypt客户端(certbot):
sudo apt install certbot python3-certbot-apache
接下来,运行以下命令以使用Apache插件获取免费的TLS证书:
sudo certbot --apache --agree-tos --redirect --staple-ocsp --email you@example.com -d example.com
如果测试成功,请重新加载Apache以使更改生效:
sudo apache2ctl -t
sudo systemctl reload apache2

步骤7.访问Nextcloud Web界面。
默认情况下,Nextcloud将在HTTP端口80上可用。打开您喜欢的浏览器,然后浏览至https://your-domain.com/或https://server-ip-address/完成所需的步骤以完成安装。如果您使用防火墙,请打开端口80以启用对控制面板的访问。您对Nextcloud的处理完全由您决定。您可以添加新模块,也可以仅将其用作基于云的文件同步和共享。您可以安装Android应用程序,甚至可以使用ownCloud桌面客户端(它们可以与Nextcloud一起正常使用)。

第一次登录会要求你设置用户名,密码,数据库地址,等信息。设置完后,进入登录界面。如下图。

3、其他问题解决方法:
(1)提示内存不足,这是由于php的默认memory_limit值为128M所导致的。

修改/etc/php/7.4/apache2/php.ini文件(ubuntu 20),其中7.4目录的命令是与当前php版本相符的,例如,php7.0,此目录名应为7.0。

找到memory_limit = 128M,将128M修改是1024M,数值按内存情况及需要而定,保存退出。
找到output_buffering = off   改off

service apache2 restart

(2)提示内存不足同时修改:
Nextcloud推荐是Apcu,大家可以搭配memcached一起使用。将php的扩展开启Apcu和memcached,然后在Nextcloud的config.php文件添加:
修改/var/www/html/nextcloud/config/config.php文件
添加如下:
'memcache.local' => '\OC\Memcache\APCu',      (解决内存不够的问题)
'default_phone_region' => 'CN',                            (解决电话的问题)

或者(假如你安装了memcached)
  'memcache.distributed' => '\OC\Memcache\Memcached',
  'memcached_servers' => 
  array (
    0 => 
    array (
      0 => 'localhost',
      1 => 11211,
    ),
 ),

(3)修改登录端口

假如你不想以80端口登录,主要是我们的应用太多了,有时可能会产品冲突。你需要修改nextcloud登录地址:

第一步
sudo vim /etc/apache2/ports.conf 修改监听端口以及主机端口为8282
Listen 8282

sudo vim /etc/apache2/sites-available/nextcloud.conf
NameVirtualHost *:8282

第二步
sudo vim /etc/apache2/sites-available/000-default.conf 只要修改virtualHost的端口即可:

<VirtualHost *:8282>
第三步
重启apache2

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BBM的开源HUB

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值