Chad f56b3da23d
Manage Script, Resource Limits, OnlyOffice Changes (#14)
* Create explicit file for cron, add two automations from fixes.

* Merge the OnlyOffice project into the Nextcloud project. Enhance comments and changelog. Make the container names consistent.

* Found the link. :)

* Add more variables.

* Add a TBD file for mail server.

* Create new script which will replace most the existing single purpose management scripts.

* Add limit to DNS so that if Internet goes out it does not max system resources.

* Prevent OnlyOffice from getting too hungry.

* Ensure Reverse Proxy always has at least some resources.

* Separate build. Add stats -s and combination option -A.

* Make script config file aware. Add comments.

* Add more comments.

* Fix comments.

* Further determine resource allocations.

* Also avoid checking for cron's call to the program.

* Add clean and log parameters. Some clean up.

* Update setups to have DIR first.

* Remove files taken over by manage script.

* Cleaning comments and output.
2023-09-01 05:50:29 -07:00
..

Initial Setup Instructions

How to first begin using this subproject.

  1. Move to the directory of this README.
    $ cd $DOCKER_HOME/Config/ReverseProxy
    
  2. Add configuration files to ./config/conf.d/ which are named based on the domains and subdomains they point to.
  3. Run the placeholder certificate program.
    # ./create_placeholder_certs.sh
    
  4. Make any personal changes to ./config/nginx.conf.
  5. Build the project.
    # docker compose build
    
  6. Start the project.
    # docker compose up -d
    
  7. Verify it started correctly, no configuration file errors.
    # docker logs reverseproxy-app-1
    # docker logs reverseproxy-certbot-1
    
  8. Create the real certificates.
    # ./create_letsencrypt_certs.sh
    
  9. Add a job to crontab for keeping the certs valid.
    # crontab -e
    X Y * * * docker exec reverseproxy-certbot-1 certbot renew
    

DO NOT

  • Edit any configurations or website data inside the container. It is destroyed on each build.
    • Instead, modify the files in ./config/ then use the Update Config commands below.
  • Install any additional software inside of the container. It will not persist a down and up.
    • Instead, add what is needed to the docker-compose.yml or Dockerfile to be done on each rebuild.
    • Alternatively write a script such as ../Nextcloud/fixes.ksh which is run after every upgrade.

Other Commands

Tasks which will also likely come up while using this subproject.

Stop

If the proxy needs turned off either stop or down may be used.

# docker compose stop
# docker compose down

Upgrade

Upgrading the containers should be as easy as this:

# docker compose down
# docker compose pull
# docker compose build
# docker compose up -d

Update Config

Replace the configuration based on any new, updated, or removed files. This may be possible to do when the system is up, but the best results have come from going down and back up. This is essentially an upgrade but there is no pull.

# docker compose down
# docker compose build
# docker compose up -d

If wanted as a one-line command:

# docker compose down && docker compose build && docker compose up -d