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

    Invoice Software - Office 365 Or Purchase Software Suite?

    IT Discussion
    17
    105
    16.4k
    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.
    • garak0410G
      garak0410 @Danp
      last edited by

      @Danp said in Invoice Software - Office 365 Or Purchase Software Suite?:

      @garak0410 It's sudo apt not sudo app.

      0_1483654120610_doh.jpg

      Installed now...moving...will report progress...

      garak0410G 1 Reply Last reply Reply Quote 2
      • garak0410G
        garak0410 @garak0410
        last edited by

        @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

        @Danp said in Invoice Software - Office 365 Or Purchase Software Suite?:

        @garak0410 It's sudo apt not sudo app.

        0_1483654120610_doh.jpg

        Installed now...moving...will report progress...

        docker-compose up
        ERROR: In file './docker-compose.yml' service 'version' doesn't have any configuration options. All top level keys in your docker-compose.yml must map to a dictionary of configuration options.

        I'm sure this is a newbie thing too...

        hillel369H scottalanmillerS 2 Replies Last reply Reply Quote 0
        • hillel369H
          hillel369 Vendor @garak0410
          last edited by

          @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

          ERROR: In file './docker-compose.yml' service 'version' doesn't have any configuration options

          From searching online this error can sometimes be resolved by upgrading your version of docker-compose.

          https://github.com/docker/compose/issues/4053

          You can check which version you're using by running:

          docker-compose version

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

            @garak0410 is your Ubuntu up to date? Both did you install the latest Ubuntu which is 16.10 and have you done this to make sure that it is properly patched?

            sudo apt-get update
            sudo apt-get dist-upgrade
            
            garak0410G 1 Reply Last reply Reply Quote 0
            • garak0410G
              garak0410 @scottalanmiller
              last edited by

              @scottalanmiller said in Invoice Software - Office 365 Or Purchase Software Suite?:

              @garak0410 is your Ubuntu up to date? Both did you install the latest Ubuntu which is 16.10 and have you done this to make sure that it is properly patched?

              sudo apt-get update
              sudo apt-get dist-upgrade
              

              Got this on the update attempt:

              sudo apt-get update
              [sudo] password for user:
              Hit:1 http://security.ubuntu.com/ubuntu xenial-security InRelease
              Hit:2 http://us.archive.ubuntu.com/ubuntu xenial InRelease
              Hit:3 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease
              Hit:4 http://us.archive.ubuntu.com/ubuntu xenial-backports InRelease
              E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)
              E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

              DustinB3403D momurdaM 2 Replies Last reply Reply Quote 0
              • DustinB3403D
                DustinB3403 @garak0410
                last edited by

                @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                Hit:3 http://us.archive.ubuntu.com/ubuntu xenial-updates InRelease

                http://askubuntu.com/questions/15433/unable-to-lock-the-administration-directory-var-lib-dpkg-is-another-process

                Read the recommendations carefully, the alternative steps should be tried first.

                1 Reply Last reply Reply Quote 1
                • momurdaM
                  momurda @garak0410
                  last edited by momurda

                  @garak0410
                  That error usually means you have something open like Software Updater or something else needs to be closed.
                  Just reboot, login open terminal(if using a gui) and then do your
                  sudo apt-get update
                  edit forgot this: sudo apt-get upgrade
                  sudo apt-get dist-upgrade

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

                    Do you have a GUI on this server?

                    garak0410G 1 Reply Last reply Reply Quote 0
                    • garak0410G
                      garak0410 @momurda
                      last edited by

                      @momurda said in Invoice Software - Office 365 Or Purchase Software Suite?:

                      @garak0410
                      That error usually means you have something open like Software Updater or something else needs to be closed.
                      Just reboot, login open terminal(if using a gui) and then do your
                      sudo apt-get update
                      edit forgot this: sudo apt-get upgrade
                      sudo apt-get dist-upgrade

                      Same errors as above...

                      1 Reply Last reply Reply Quote 0
                      • garak0410G
                        garak0410 @scottalanmiller
                        last edited by

                        @scottalanmiller said in Invoice Software - Office 365 Or Purchase Software Suite?:

                        Do you have a GUI on this server?

                        Yes...running latest Ubuntu DESKTOP version...

                        DustinB3403D 2 Replies Last reply Reply Quote 0
                        • DustinB3403D
                          DustinB3403 @garak0410
                          last edited by

                          @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                          @scottalanmiller said in Invoice Software - Office 365 Or Purchase Software Suite?:

                          Do you have a GUI on this server?

                          Yes...running latest Ubuntu DESKTOP version...

                          Why the "desktop" version?

                          Linux has always been designed as a server first, and things removed for the desktop version. If you're using this to host applications, you really should use the "Server" version.

                          garak0410G 1 Reply Last reply Reply Quote 0
                          • DustinB3403D
                            DustinB3403 @garak0410
                            last edited by

                            @garak0410 Start over with this ISO.

                            1 Reply Last reply Reply Quote 1
                            • garak0410G
                              garak0410 @DustinB3403
                              last edited by

                              @DustinB3403 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                              @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                              @scottalanmiller said in Invoice Software - Office 365 Or Purchase Software Suite?:

                              Do you have a GUI on this server?

                              Yes...running latest Ubuntu DESKTOP version...

                              Why the "desktop" version?

                              Linux has always been designed as a server first, and things removed for the desktop version. If you're using this to host applications, you really should use the "Server" version.

                              Just honest ignorance of Linux options...trying server now...

                              garak0410G 1 Reply Last reply Reply Quote 0
                              • garak0410G
                                garak0410 @garak0410
                                last edited by

                                @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                @DustinB3403 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                @scottalanmiller said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                Do you have a GUI on this server?

                                Yes...running latest Ubuntu DESKTOP version...

                                Why the "desktop" version?

                                Linux has always been designed as a server first, and things removed for the desktop version. If you're using this to host applications, you really should use the "Server" version.

                                Just honest ignorance of Linux options...trying server now...

                                I've set up Ubuntu Server...so, trying the install again... 🙂

                                travisdh1T garak0410G 2 Replies Last reply Reply Quote 1
                                • travisdh1T
                                  travisdh1 @garak0410
                                  last edited by

                                  @garak0410 You might want to take some time to look at @scottalanmiller's Learning Linux System Administration.

                                  1 Reply Last reply Reply Quote 1
                                  • s.hacklemanS
                                    s.hackleman
                                    last edited by

                                    My 2 cents.. I have a client that manages basic inventory and invoicing for her business with Inflow. It is affordable and does exactly what I need it to do.

                                    https://www.inflowinventory.com/

                                    1 Reply Last reply Reply Quote 0
                                    • garak0410G
                                      garak0410 @garak0410
                                      last edited by

                                      @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                      @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                      @DustinB3403 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                      @garak0410 said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                      @scottalanmiller said in Invoice Software - Office 365 Or Purchase Software Suite?:

                                      Do you have a GUI on this server?

                                      Yes...running latest Ubuntu DESKTOP version...

                                      Why the "desktop" version?

                                      Linux has always been designed as a server first, and things removed for the desktop version. If you're using this to host applications, you really should use the "Server" version.

                                      Just honest ignorance of Linux options...trying server now...

                                      I've set up Ubuntu Server...so, trying the install again... 🙂

                                      Ubuntu Server is set up...both of these commands worked this time:

                                      sudo apt-get update
                                      sudo apt-get dist-upgrade

                                      Still can't get the docker to work... on docker compose-up still get this:

                                      ERROR: In file './docker-compose.yml' service 'version' doesn't have any configuration options. All top level keys in your docker-compose.yml must map to a dictionary of configuration options.

                                      Here's my version information:

                                      docker-compose version 1.5.2, build unknown
                                      docker-py version: 1.8.0
                                      CPython version: 2.7.12+

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

                                        Haven't done tons with Docker. I'm not digging through the history here, but are you on the proper, current version of Ubuntu or are you on an older version? We know from another thread that if, at least in that case, using the old only partially supported LTS Ubuntu version instead of the current, fully supported version you get a Docker error like this. Make sure your on the current, fully supported version of Ubuntu.

                                        1 Reply Last reply Reply Quote 0
                                        • RomoR
                                          Romo
                                          last edited by Romo

                                          @garak0410 Set up your Ubuntu Server 16.10 vm, and try my script to install Invoice Ninja with a self signed SSL certificate.

                                          It has been building properly in all of my tests, it seems to hang during the app db migration but just let it run. Also remember when creating the ssl cert, to set your FQDN or IP (which ever you chose at the beginning) in the COMMON NAME option.

                                          Get it with the following command or just copy paste the full script.

                                          wget  https://raw.githubusercontent.com/rodrigo-hissam/invoice-ninja-installer/master/ininja-installer.sh
                                          chmod +x ininja-installer.sh
                                          ./ininja-installer.sh
                                          

                                          FULL SCRIPT

                                          #!/bin/bash
                                          
                                          ############################################
                                          #	    Invoice Ninja Install Script   #
                                          #     Script Created by Rodrigo Moreno     #
                                          #    	 for https://mangolassi.it         #
                                          ############################################
                                          
                                          
                                          # Ensure running as root
                                          # composer should not be ran as root.
                                          #if [[ $ EUID -ne 0 ]]; then
                                          #  exec sudo "$0" "$@"
                                          #fi
                                          # Variables and inital setup
                                          clear
                                          
                                          name="ininja"
                                          hostname="$(hostname)"
                                          fqdn="$(hostname)"
                                          tmp=/tmp/$name
                                          logfile=/var/log/invoice-ninja-install.log
                                          webdir=/var/www/html
                                          user=$USER
                                          app_key="$(< /dev/urandom tr -dc _A-Za-z-0-9 2>&1 | head -c32)"
                                          app_user=${name}'_user'
                                          
                                          spin[0]="-"
                                          spin[1]="\\"
                                          spin[2]="|"
                                          spin[3]="/"
                                          
                                          rm -rf ${tmp:?}
                                          mkdir $tmp
                                          
                                          
                                          cat << EOF
                                          
                                              ____                 _              _   ___         _          
                                             /  _/___ _   ______  (_)_______     / | / (_)___    (_)___ _    
                                             / // __ \ | / / __ \/ / ___/ _ \   /  |/ / / __ \  / / __  /    
                                           _/ // / / / |/ / /_/ / / /__/  __/  / /|  / / / / / / / /_/ /     
                                          /___/_/ /_/|___/\____/_/\___/\___/  /_/ |_/_/_/ /_/_/ /\__,_/      
                                                                                           /___/             
                                          
                                          EOF
                                          
                                          echo " Welcome to the Invoice Ninja Installer for Ubuntu 16.10!"
                                          echo ""
                                          echo ""
                                          
                                          
                                          #Getting your FQDN.
                                          echo -n "  Q. What is the FQDN of your server? ($fqdn): "
                                          read fqdn
                                          if [ -z "$fqdn" ]; then
                                                  fqdn="$(hostname --fqdn)"
                                          fi
                                          echo "     Setting to $fqdn"
                                          echo ""
                                          
                                          # Set your own passwords, or generate random ones?
                                          until [[ $ans == "yes" ]] || [[ $ans == "no" ]]; do
                                          echo -n "  Q. Do you want me to automatically create the invoice ninja database user password? (y/n) "
                                          read setpw
                                          
                                          case $setpw in
                                                  [yY] | [yY][Ee][Ss] )
                                                          mariadbuserpw="$(< /dev/urandom tr -dc _A-Za-z-0-9 2>&1 | head -c24)"
                                                          ans="yes"
                                                          ;;
                                                  [nN] | [n|N][O|o] )
                                                          echo -n  "  Q. Insert your mariadb database user password:"
                                                          read -s mariadbuserpw
                                                          echo ""
                                          		ans="no"
                                                          ;;
                                                  *) 	echo "  Invalid answer. Please type y or n"
                                                          ;;
                                          esac
                                          done
                                          
                                          echo ""
                                          echo  "* Making sure your Ubuntu install is updated (apt-get update)... ${spin[0]}"
                                          echo ""
                                          sudo apt-get update 
                                          
                                          echo""
                                          echo  " Upgrading your packages (apt-get upgrade)"
                                          echo ""
                                          sudo apt-get upgrade -y
                                          echo ""
                                          
                                          
                                          
                                          echo ""
                                          echo ""
                                          echo "* LEMP stack install and setup"
                                          echo "------------------------------"
                                          
                                          # NGINX
                                          echo ""
                                          echo "- Installing nginx " 
                                          echo ""
                                          sudo apt-get install nginx -y
                                          echo ""
                                          
                                          
                                          
                                          # MARIADB
                                          echo ""
                                          echo ""
                                          echo  "- Installing MariaDB "
                                          sudo apt-get install software-properties-common -y
                                          sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8
                                          sudo add-apt-repository 'deb [arch=amd64,i386] http://mirror.jmu.edu/pub/mariadb/repo/10.1/ubuntu yakkety main'
                                          sudo apt-get update
                                          sudo apt-get install mariadb-server -y
                                          echo ""
                                          echo ""
                                          echo "- Hardening mariadb installation"
                                          mysql_secure_installation
                                          echo ""
                                          echo "Create the database for Invoice Ninja..."
                                          echo -n "Please enter your MARIADB root password: "
                                          read -s mariadbrootpw
                                          mysql -uroot -p${mariadbrootpw} -e "CREATE DATABASE ${name};"
                                          mysql -uroot -p${mariadbrootpw} -e "CREATE user ${name}_user@localhost IDENTIFIED BY '${mariadbuserpw}';"
                                          mysql -uroot -p${mariadbrootpw} -e "GRANT ALL PRIVILEGES ON ${name}.* TO '${name}_user'@'localhost';"
                                          mysql -uroot -p${mariadbrootpw} -e "FLUSH PRIVILEGES;"
                                          
                                          
                                          
                                          #PHP and extras
                                          echo ""
                                          echo ""
                                          echo "- Installing and setting up PHP7.0 and its extensions "
                                          sudo apt-get install curl wget php7.0 php7.0-fpm php7.0-mysql php7.0-mcrypt php7.0-gd php7.0-curl php7.0-mbstring php7.0-zip php7.0-gmp php7.0-xml -y
                                          sudo sed -i.bak 's/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/g' /etc/php/7.0/fpm/php.ini
                                          sudo phpenmod -v 7.0 mcrypt
                                          sudo systemctl restart php7.0-fpm
                                          cd $tmp
                                          echo ""
                                          echo ""
                                          curl -sS https://getcomposer.org/installer | php
                                          sudo mv composer.phar /usr/local/bin/composer
                                           
                                          
                                          #Invoice Ninja
                                          echo ""
                                          echo  "- Installing git and cloning the Invoice Ninja repo "
                                          sudo apt-get install git
                                          git clone https://github.com/hillelcoren/invoice-ninja.git  $name 
                                          sudo mv $name $webdir
                                          sudo chown -R $user:$user $webdir/$name
                                          cd $webdir/$name
                                          
                                          
                                          #
                                          echo ""
                                          echo "---- Downloading Invoice Ninja Dependencies "
                                          composer install --no-dev -o
                                          
                                          # Setting env variables
                                          echo ""
                                          echo "- Setting up .env file"
                                          mv .env.example .env
                                          sudo sed -i.bak "s/DB_DATABASE=ninja/DB_DATABASE=${name}/g" .env
                                          sudo sed -i.bak "s/DB_USERNAME=ninja/DB_USERNAME=${app_user}/g" .env
                                          sudo sed -i.bak "s/DB_PASSWORD=ninja/DB_PASSWORD=${mariadbuserpw}/g" .env
                                          
                                          sudo sed -i.bak "s/APP_UR:L=http:\/\/ninja.dev/APP_URL=${fqdn}/g" .env
                                          
                                          # Running db migrations and seeding the db
                                          echo ""
                                          echo "- Running invoice ninja db migration, this will take a while"
                                          php artisan migrate
                                          php artisan db:seed
                                          
                                          php artisan key:generate
                                          
                                          
                                          # Creating a new PHP-FPM pool for our user
                                          echo ""
                                          echo "- Creating a new PHP-FPM pool"
                                          cat  > $tmp/$user.conf << EOF
                                          [$user]
                                          user = $user
                                          group = $user
                                          listen = /var/run/php/php7.0-fpm-$user.sock
                                          listen.owner = $user
                                          listen.group = www-data
                                          listen.mode = 0660
                                          pm = ondemand
                                          pm.max_children = 5
                                          pm.process_idle_timeout = 10s;  
                                          pm.max_requests = 200  
                                          chdir = /  
                                          EOF
                                          
                                          # Moving the pool conf and restarting the service
                                          sudo mv $tmp/$user.conf /etc/php/7.0/fpm/pool.d/
                                          sudo systemctl restart php7.0-fpm.service 
                                          
                                          echo ""
                                          echo "# Creating self signed certificate and nginx config"
                                          echo""
                                          # Create the SSL self sigend certificate
                                          sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt
                                          # Diffie-Hellman group, used in negotiating Perfect Forward Secrecy with clients.
                                          sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
                                          
                                          cat > $tmp/ssl.conf << EOF
                                          server {
                                              listen 443 http2 ssl;
                                              listen [::]:443 http2 ssl;
                                          
                                              server_name $fqdn;
                                          
                                              ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt;
                                              ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key;
                                              ssl_dhparam /etc/ssl/certs/dhparam.pem;
                                          
                                              ########################################################################
                                              # from https://cipherli.st/                                            #
                                              # and https://raymii.org/s/tutorials/Strong_SSL_Security_On_nginx.html #
                                              ########################################################################
                                          
                                              ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
                                              ssl_prefer_server_ciphers on;
                                              ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
                                              ssl_ecdh_curve secp384r1;
                                              ssl_session_cache shared:SSL:10m;
                                              ssl_session_tickets off;
                                              ssl_stapling on;
                                              ssl_stapling_verify on;
                                              resolver 8.8.8.8 8.8.4.4 valid=300s;
                                              resolver_timeout 5s;
                                              # Disable preloading HSTS for now.  You can use the commented out header line that includes
                                              # the "preload" directive if you understand the implications.
                                              #add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
                                              add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
                                              add_header X-Frame-Options DENY;
                                              add_header X-Content-Type-Options nosniff;
                                          
                                              ##################################
                                              # END https://cipherli.st/ BLOCK #
                                              ##################################
                                          
                                              charset utf-8;
                                          
                                              root /var/www/html/$name/public;
                                          
                                              index index.html index.htm index.php;
                                          
                                              location / {
                                              	try_files \$uri \$uri/ /index.php?\$query_string;
                                              }
                                          
                                              location = /favicon.ico { access_log off; log_not_found off; }
                                              location = /robots.txt  { access_log off; log_not_found off; }
                                          
                                              access_log  /var/log/nginx/ininja.access.log;
                                              error_log   /var/log/nginx/ininja.error.log;
                                          
                                              sendfile off;
                                          
                                              location ~ \.php$ {
                                                  fastcgi_split_path_info ^(.+\.php)(/.+)$;
                                                  fastcgi_pass unix:/var/run/php/php7.0-fpm-$user.sock;
                                                  fastcgi_index index.php;
                                                  include fastcgi_params;
                                                  fastcgi_param SCRIPT_FILENAME \$document_root\$fastcgi_script_name;
                                                  fastcgi_intercept_errors off;
                                                  fastcgi_buffer_size 16k;
                                                  fastcgi_buffers 4 16k;
                                              }
                                          
                                              location ~ /\.ht {
                                                  deny all;
                                              }
                                          }
                                          
                                          server {
                                                  listen 80;
                                                  server_name $fqdn;
                                                  return  301 https://\$server_name\$request_uri;
                                          }
                                          EOF
                                          
                                          sudo mv $tmp/ssl.conf /etc/nginx/conf.d/
                                          
                                          sudo systemctl restart php7.0-fpm.service 
                                          sudo systemctl restart nginx.service
                                          
                                          echo "ALL DONE!!! Point your web browser to ${fqdn} and complete the setup"
                                          

                                          After running the script, just pointed my browser to my servers ip (192.168.2.26) and voila you can now finish the setup.
                                          alt text

                                          hillel369H 1 Reply Last reply Reply Quote 2
                                          • hillel369H
                                            hillel369 Vendor @Romo
                                            last edited by

                                            @Romo That's awesome!!!

                                            There are close to 100 migrations which explains why it takes so long, we're looking into enable use of a single SQL file when first installing to improve the performance.

                                            1 Reply Last reply Reply Quote 2
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 6
                                            • 1 / 6
                                            • First post
                                              Last post