ML
    • Recent
    • Categories
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Install NextCloud 11 on Fedora 25 with SaltStack

    IT Discussion
    nextcloud nextcloud 11 fedora linux fedora 25 redis mariadb salt saltstack devops scott alan miller sam salt administration
    14
    201
    41.1k
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • scottalanmillerS
      scottalanmiller @FATeknollogee
      last edited by

      @FATeknollogee said in Install NextCloud 11 on Fedora 25 with SaltStack:

      @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

      @FATeknollogee Yes. I created a dedicated CentOS 7 VM for the master and created a VM with Fedora 25 for the nextcloud minion.

      Any specific reason for using 1x CentOS and 1x Fedora 25 vm?

      One is for Salt and the other is for NextCloud. Fedora is fully updated for NextCloud. CentOS is great for stable Salt Master.

      FATeknollogeeF 1 Reply Last reply Reply Quote 0
      • FATeknollogeeF
        FATeknollogee @scottalanmiller
        last edited by

        @scottalanmiller said in Install NextCloud 11 on Fedora 25 with SaltStack:

        @FATeknollogee said in Install NextCloud 11 on Fedora 25 with SaltStack:

        @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

        @FATeknollogee Yes. I created a dedicated CentOS 7 VM for the master and created a VM with Fedora 25 for the nextcloud minion.

        Any specific reason for using 1x CentOS and 1x Fedora 25 vm?

        One is for Salt and the other is for NextCloud. Fedora is fully updated for NextCloud. CentOS is great for stable Salt Master.

        Do you gain or lose anything if both vm's were Fedora 25?

        scottalanmillerS 1 Reply Last reply Reply Quote 0
        • scottalanmillerS
          scottalanmiller @FATeknollogee
          last edited by

          @FATeknollogee said in Install NextCloud 11 on Fedora 25 with SaltStack:

          @scottalanmiller said in Install NextCloud 11 on Fedora 25 with SaltStack:

          @FATeknollogee said in Install NextCloud 11 on Fedora 25 with SaltStack:

          @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

          @FATeknollogee Yes. I created a dedicated CentOS 7 VM for the master and created a VM with Fedora 25 for the nextcloud minion.

          Any specific reason for using 1x CentOS and 1x Fedora 25 vm?

          One is for Salt and the other is for NextCloud. Fedora is fully updated for NextCloud. CentOS is great for stable Salt Master.

          Do you gain or lose anything if both vm's were Fedora 25?

          Perfectly fine. No need for CentOS for Salt Master.

          1 Reply Last reply Reply Quote 0
          • wrx7mW
            wrx7m @JaredBusch
            last edited by

            @JaredBusch said in Install NextCloud 11 on Fedora 25 with SaltStack:

            @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

            @FATeknollogee I am more comfortable with CentOS and am using the minimal install version. It is lightweight and a small footprint "out of the box". The iso is under 700MB and the Fedora 25 iso is 1.9GB. I would have gone with CentOS 7 for nextcloud but it doesn't have PHP 7.x

            You downloaded the wrong Fedora ISO.

            You can get PHP 7 on CentOS 7 easily if you choose to trust Remi.

            @scottalanmiller disagrees with that method because it breaks the support chain. Which is the only reason to use CentOS 7 in his opinion.

            Which Fedora 25 Server ISO should I have downloaded?

            JaredBuschJ 1 Reply Last reply Reply Quote 0
            • wrx7mW
              wrx7m
              last edited by

              This is the link to the one I downloaded - https://getfedora.org/en/server/download/

              The only other one I could find is the netinstall version, which will just download everything else when you do the install.

              1 Reply Last reply Reply Quote 0
              • JaredBuschJ
                JaredBusch @wrx7m
                last edited by

                @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

                @JaredBusch said in Install NextCloud 11 on Fedora 25 with SaltStack:

                @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

                @FATeknollogee I am more comfortable with CentOS and am using the minimal install version. It is lightweight and a small footprint "out of the box". The iso is under 700MB and the Fedora 25 iso is 1.9GB. I would have gone with CentOS 7 for nextcloud but it doesn't have PHP 7.x

                You downloaded the wrong Fedora ISO.

                You can get PHP 7 on CentOS 7 easily if you choose to trust Remi.

                @scottalanmiller disagrees with that method because it breaks the support chain. Which is the only reason to use CentOS 7 in his opinion.

                Which Fedora 25 Server ISO should I have downloaded?

                NetInstall
                0_1493846238169_upload-84f3cee2-fa82-4904-b034-3225699ce891

                wrx7mW 1 Reply Last reply Reply Quote 1
                • wrx7mW
                  wrx7m @JaredBusch
                  last edited by

                  @JaredBusch Does NetInstall allow you to pick and choose packages during the setup?

                  JaredBuschJ 1 Reply Last reply Reply Quote 0
                  • JaredBuschJ
                    JaredBusch @wrx7m
                    last edited by

                    @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

                    @JaredBusch Does NetInstall allow you to pick and choose packages during the setup?

                    Of course.

                    See this thread.
                    https://mangolassi.it/topic/13498/how-to-install-fedora-25-minimal

                    wrx7mW 1 Reply Last reply Reply Quote 1
                    • wrx7mW
                      wrx7m @JaredBusch
                      last edited by

                      @JaredBusch If only I had come across that when I was trying to find out if there was a minimal version of Fedora 25 LOL. Thanks for that.

                      1 Reply Last reply Reply Quote 0
                      • wrx7mW
                        wrx7m
                        last edited by

                        I am going to blow up my nextcloud vm and start with the Fedora netinstall.

                        JaredBuschJ 1 Reply Last reply Reply Quote 0
                        • JaredBuschJ
                          JaredBusch @wrx7m
                          last edited by

                          @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

                          I am going to blow up my nextcloud vm and start with the Fedora netinstall.

                          If you are only after Nextcloud, here is my guide for that.
                          https://mangolassi.it/topic/13573/install-nextcloud-11-03-on-fedora-25-minimal

                          If you want to learn Salt, then continue with this post as you have been.

                          wrx7mW 1 Reply Last reply Reply Quote 1
                          • wrx7mW
                            wrx7m @JaredBusch
                            last edited by

                            @JaredBusch said in Install NextCloud 11 on Fedora 25 with SaltStack:

                            @wrx7m said in Install NextCloud 11 on Fedora 25 with SaltStack:

                            I am going to blow up my nextcloud vm and start with the Fedora netinstall.

                            If you are only after Nextcloud, here is my guide for that.
                            https://mangolassi.it/topic/13573/install-nextcloud-11-03-on-fedora-25-minimal

                            If you want to learn Salt, then continue with this post as you have been.

                            I will do both 🙂 Thanks for this.

                            1 Reply Last reply Reply Quote 0
                            • travisdh1T
                              travisdh1 @scottalanmiller
                              last edited by

                              @scottalanmiller said in Install NextCloud 11 on Fedora 25 with SaltStack:

                              Let's try this...

                              install_network_packages:
                                pkg.installed:
                                  - pkgs:
                                    - wget
                                    - unzip
                                    - firewalld
                                    - net-tools
                                    - php 
                                    - mariadb 
                                    - mariadb-server 
                                    - mod_ssl
                                    - php-pecl-apcu
                                    - httpd 
                                    - php-xml 
                                    - php-gd 
                                    - php-pecl-zip
                                    - php-mbstring
                                    - redis
                                    - php-pecl-redis
                                    - php-process
                                    - php-pdo
                                    - certbot
                                    - php-mysqlnd
                                    - policycoreutils
                                    - policycoreutils-python
                                    - policycoreutils-python-utils
                                    - dnf-automatic
                                    - python2-certbot-apache
                                archive:
                                  - extracted
                                  - name: /var/www/html/
                                  - source: https://download.nextcloud.com/server/releases/nextcloud-11.0.2.zip
                                  - source_hash: md5=720cb50f98a94f2888f2d07d5d4e91b4
                                  - archive_format: zip
                                  - if_missing: /var/www/html/nextcloud 
                              
                              /swapfile:
                                cmd.run:
                                  - name: |
                                      [ -f /swapfile ] || dd if=/dev/zero of=/swapfile bs=1M count={{ grains["mem_total"] * 2 }}
                                      chmod 0600 /swapfile
                                      mkswap /swapfile
                                      swapon -a
                                  - unless:
                                    - file /swapfile 2>&1 | grep -q "Linux/i386 swap"
                                mount.swap:
                                  - persist: true
                              
                              configure_swappiness:
                                file.append:
                                  - name: /etc/sysctl.conf
                                  - text: vm.swappiness = 10
                              
                              /var/www/html/:
                                file.directory:
                                  - user: apache
                                  - group: apache
                                  - recurse:
                                    - user
                                    - group
                              
                              /etc/httpd/conf.d/ssl.conf:
                                file.managed:
                                  - source: 
                                    - salt://ssl.conf
                                  - user: root
                                  - group: root
                                  - mode: 644
                              
                              /data:
                                file.directory:
                                  - user: apache
                                  - group: apache
                              
                              /var/run/redis:
                                file.directory:
                                  - user: redis
                                  - group: redis
                              
                              /etc/redis.conf:
                                file.managed:
                                  - source:
                                    - salt://redis.conf
                                  - user: root
                                  - group: root
                                  - mode: 644
                              
                              httpd:
                                pkg.installed: []
                                service.running:
                                  - enable: True
                                  - require:
                                    - pkg: httpd
                              
                              mariadb:
                                pkg.installed: []
                                service.running:
                                  - enable: True
                                  - require:
                                    - pkg: mariadb
                              
                              redis:
                                pkg.installed: []
                                service.running:
                                  - enable: True
                                  - require:
                                    - pkg: redis
                              
                              FedoraServer:
                                firewalld.present:
                                  - name: FedoraServer
                                  - block_icmp:
                                    - echo-reply
                                    - echo-request
                                  - default: False
                                  - masquerade: True
                                  - ports:
                                    - 443/tcp
                                    - 22/tcp
                                    - 9090/tcp
                              
                              permissive:
                                selinux.mode
                              
                              install-foo:
                                cmd.run:
                                  - name: |
                                      cd /var/www/html/nextcloud
                                      setenforce 0
                                      sudo -u apache php occ maintenance:install --database="mysql" --database-name "nextcloud" --database-user "root" --database-pass "" --admin-user "admin" --admin-pass "superdupercrazysecretepasswordthatnooneknows" --data-dir "/data"
                                      sed -i "/0 => 'localhost',/a \ \ \ \ 1 => '*'," config/config.php
                                      sed -i "/'installed' => true,/a \ \ 'memcache.local' => '\\\OC\\\Memcache\\\APCu',\n\ \ 'filelocking.enabled' => true,\n\ \ 'memcache.locking' => '\\\OC\\\Memcache\\\Redis',\n\ \ 'redis' => array(\n\ \ \ \ \ \ \ 'host' => '/var/run/redis/redis.sock',\n\ \ \ \ \ \ \ 'port' => 0,\n\ \ \ \ \ \ \ 'timeout' => 0.0,\n\ \ \ \ \ \ \ \ )," config/config.php
                                      semanage fcontext -a -t httpd_sys_rw_content_t '/data'
                                      restorecon '/data'
                                      semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/config(/.*)?'
                                      semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/apps(/.*)?'
                                      semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/assets(/.*)?'
                                      semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/.htaccess'
                                      semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/.user.ini'
                                      restorecon -Rv '/var/www/html/nextcloud/' > /dev/null
                                      systemctl restart httpd
                                      touch install_complete
                                  - cwd: /var/www/html/nextcloud
                                  - shell: /bin/bash
                                  - timeout: 300
                                  - creates: /var/www/html/nextcloud/install_complete
                              

                              Try this. Hopefully it fixes both your firewall and service issues.

                              This 2nd one worked for me, but I updated it to the latest NextCloud install.

                              install_network_packages:
                                pkg.installed:
                                - pkgs:
                                - wget
                                - unzip
                                - firewalld
                                - net-tools
                                - php
                                - mariadb
                                - mariadb-server
                                - mod_ssl
                                - php-pecl-apcu
                                - httpd
                                - php-xml
                                - php-gd
                                - php-pecl-zip
                                - php-mbstring
                                - redis
                                - php-pecl-redis
                                - php-process
                                - php-pdo
                                - certbot
                                - php-mysqlnd
                                - policycoreutils
                                - policycoreutils-python
                                - policycoreutils-python-utils
                                - dnf-automatic
                                - python2-certbot-apache
                                archive:
                                  - extracted
                                  - name: /var/www/html/
                                  - source: https://download.nextcloud.com/server/releases/nextcloud-11.0.5.zip
                                  - source_hash: md5=d503c4d28b8e193925f2c65ea1350e99
                                  - archive_format: zip
                                  - if_missing: /var/www/html/nextcloud
                              
                              /swapfile:
                                cmd.run:
                                  - name: |
                                      [ -f /swapfile ] || dd if=/dev/zero of=/swapfile bs=1M count={{ grains["mem_total"] * 2 }}
                                  chmod 0600 /swapfile
                                  mkswap /swapfile
                                  swapon -a
                              - unless:
                                - file /swapfile 2>&1 | grep -q "Linux/i386 swap"
                                mount.swap:
                                  - persist: true
                              
                              configure_swappiness:
                                file.append:
                                  - name: /etc/sysctl.conf
                                  - text: vm.swappiness = 10
                              
                              /var/www/html/:
                                file.directory:
                                  - user: apache
                                  - group: apache
                                  - recurse:
                                    - user
                                    - group
                              
                              /etc/httpd/conf.d/ssl.conf:
                                file.managed:
                                  - source:
                                   - salt://ssl.conf
                                  - user: root
                                  - group: root
                                  - mode: 644
                              
                              /data:
                                file.directory:
                                  - user: apache
                                  - group: apache
                              
                              /var/run/redis:
                                file.directory:
                                  - user: redis
                                  - group: redis
                              
                              /etc/redis.conf:
                                file.managed:
                                  - source:
                                - salt://redis.conf
                                - user: root
                                - group: root
                                - mode: 644
                              
                              httpd:
                                pkg.installed: []
                                service.running:
                                  - enable: True
                                  - require:
                                    - pkg: httpd
                              
                              mariadb:
                                pkg.installed: []
                                service.running:
                                  - enable: True
                                  - require:
                                    - pkg: mariadb
                              
                              redis:
                                pkg.installed: []
                                service.running:
                                  - enable: True
                                  - require:
                                    - pkg: redis
                              
                              FedoraServer:
                                firewalld.present:
                                  - name: FedoraServer
                                  - block_icmp:
                                    - echo-reply
                                    - echo-request
                                  - default: False
                                  - masquerade: True
                                  - ports:
                                    - 443/tcp
                                    - 22/tcp
                                    - 9090/tcp
                              
                              permissive:
                                selinux.mode
                              
                              install-foo:
                                cmd.run:
                                  - name: |
                                      cd /var/www/html/nextcloud
                                      setenforce 0
                                      sudo -u apache php occ maintenance:install --database="mysql" --database-name "nextcloud" --
                              database-user "root" --database-pass "" --admin-user "admin" --admin-pass 
                              "superdupercrazysecretepasswordthatnooneknows" --data-dir "/data"
                                      sed -i "/0 => 'localhost',/a \ \ \ \ 1 => '*'," config/config.php
                                      sed -i "/'installed' => true,/a \ \ 'memcache.local' => '\\\OC\\\Memcache\\\APCu',\n\ \ 'filelocking.enabled' => true,\n\ \ 'memcache.locking' => '\\\OC\\\Memcache\\\Redis',\n\ \ 'redis' => array(\n\ \ \ \ \ \ \ 'host' => '/var/run/redis/redis.sock',\n\ \ \ \ \ \ \ 'port' => 0,\n\ \ \ \ \ \ \ 'timeout' => 0.0,\n\ \ \ \ \ \ \ \ )," config/config.php
                                  semanage fcontext -a -t httpd_sys_rw_content_t '/data'
                                  restorecon '/data'
                                  semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/config(/.*)?'
                                  semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/apps(/.*)?'
                                  semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/assets(/.*)?'
                                  semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/.htaccess'
                                  semanage fcontext -a -t httpd_sys_rw_content_t '/var/www/html/nextcloud/.user.ini'
                                  restorecon -Rv '/var/www/html/nextcloud/' > /dev/null
                                  systemctl restart httpd
                                  touch install_complete
                              - cwd: /var/www/html/nextcloud
                              - shell: /bin/bash
                              - timeout: 300
                              - creates: /var/www/html/nextcloud/install_complete
                              
                              1 Reply Last reply Reply Quote 0
                              • FATeknollogeeF
                                FATeknollogee
                                last edited by FATeknollogee

                                Trying to do this with v 12.0.3 (os is Fedora 26), but I'm getting one error...any ideas

                                    ID: redis                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                Function: service.running                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                  Result: False                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  
                                 Comment: Service redis is already enabled, and is dead                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          
                                 Started: 00:32:28.386168                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                Duration: 68.777 ms
                                
                                1 Reply Last reply Reply Quote 0
                                • scottalanmillerS
                                  scottalanmiller
                                  last edited by

                                  Do this...

                                  systemctl restart redis
                                  systemctl status redis
                                  
                                  FATeknollogeeF 2 Replies Last reply Reply Quote 0
                                  • black3dynamiteB
                                    black3dynamite
                                    last edited by

                                    I notice you’re using swapfile. Is this script based on the Fedora instance that vultr provides?

                                    scottalanmillerS 1 Reply Last reply Reply Quote 0
                                    • FATeknollogeeF
                                      FATeknollogee @scottalanmiller
                                      last edited by

                                      @scottalanmiller said in Install NextCloud 11 on Fedora 25 with SaltStack:

                                      Do this...

                                      systemctl restart redis
                                      systemctl status redis
                                      

                                      Thanks. I'm redoing the whole install, will report back in a few...

                                      1 Reply Last reply Reply Quote 0
                                      • scottalanmillerS
                                        scottalanmiller @black3dynamite
                                        last edited by

                                        @black3dynamite said in Install NextCloud 11 on Fedora 25 with SaltStack:

                                        I notice you’re using swapfile. Is this script based on the Fedora instance that vultr provides?

                                        That's where I use it, that's correct. I use the SATA based storage instances.

                                        1 Reply Last reply Reply Quote 0
                                        • FATeknollogeeF
                                          FATeknollogee @scottalanmiller
                                          last edited by

                                          @scottalanmiller
                                          â—Ź redis.service - Redis persistent key-value database
                                          Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
                                          Drop-In: /etc/systemd/system/redis.service.d
                                          └─limit.conf
                                          Active: failed (Result: exit-code) since Fri 2017-10-06 09:14:55 PDT; 1s ago
                                          Process: 2063 ExecStart=/usr/bin/redis-server /etc/redis.conf --daemonize no (code=exited, status=1/FAILURE)
                                          Main PID: 2063 (code=exited, status=1/FAILURE)

                                          Oct 06 09:14:55 salt systemd[1]: Started Redis persistent key-value database.
                                          Oct 06 09:14:55 salt redis-server[2063]: *** FATAL CONFIG FILE ERROR ***
                                          Oct 06 09:14:55 salt redis-server[2063]: Reading the configuration file, at line 5
                                          Oct 06 09:14:55 salt redis-server[2063]: >>> 'Listen 443 https'
                                          Oct 06 09:14:55 salt redis-server[2063]: Bad directive or wrong number of arguments
                                          Oct 06 09:14:55 salt systemd[1]: redis.service: Main process exited, code=exited, status=1/FAILURE
                                          Oct 06 09:14:55 salt systemd[1]: redis.service: Unit entered failed state.
                                          Oct 06 09:14:55 salt systemd[1]: redis.service: Failed with result 'exit-code'.

                                          1 Reply Last reply Reply Quote 0
                                          • scottalanmillerS
                                            scottalanmiller
                                            last edited by

                                            Okay, what do we have at line 5? I'm guessing you have it set to listen on HTTPS which will not work as the web server needs that.

                                            1 Reply Last reply Reply Quote 0
                                            • 1
                                            • 2
                                            • 5
                                            • 6
                                            • 7
                                            • 8
                                            • 9
                                            • 10
                                            • 11
                                            • 7 / 11
                                            • First post
                                              Last post