LoneStar

Members
  • Posts

    6
  • Joined

  • Last visited

Everything posted by LoneStar

  1. Again thank you for setting time aside to answer - I've been for a long time looking for a reason to play with LXC and this plugin made it simple enough for me to start (and learn). Thanks for clarifying that it is a "distro" "builder" for the OS (e.g. Debian). I was expecting that much that it is NOT a replacement for Dockerfile. That's why I was looking for a "packer"/"terraform"/"ansible"/... alternative in updating the LXC content and stumbled upon "incus". Not exactly what I'm looking for and will explain later.... That sounds like a something I'm looking for and would be a great help - I would put my hand up if you need reviewers / testers. Hope I can answer your question without getting too distracted (comments below is NOT about the LXC plugin, so if I miss something please correct me)... I prefer a simple & automated way to maintain custom "containers". For example - take "mkdocs-material" (documenting code with a Python package) using a custom Dockerfile: - The custom Dockerfile has a bunch of extra steps & plugins - UnRAID Stacks is out (except if there is a way to get the Dockerfile rebuild when a new "mkdocs-material" is released) - and Portainer is out (Portainer also does not rebuild the Dockerfile). - This means I regularly check if there are updates and then rebuild & redeploy - Rebuild is not a problem (I got some scripting around it), but it is elementary and manual today. I can spend time cleaning it all up - or look for a ready solution LXC - add the OS maintenance steps, else the same steps - in LXC it would require managing Python 3.11+ releases and the "pyproject.toml" / "requirements.txt" to rebuild modules & steps. Maybe docker is a more suitable solution for this example, but I would like to see if LXC can simplify the steps (allowing me to evaluate the best fit). That's why I got all excited when I saw the "cloud-init" (cloud-config) discussion: https://discuss.linuxcontainers.org/t/newbie-question-whats-the-lxc-version-of-a-dockerfile/6487/5 I have a number of other Linux (only) processes I would like to automate, and particularly interested in how "virt-manager" (https://hub.docker.com/r/mber5/virt-manager) enables a GUI in a container, thereby eliminating a full VM. I hope it makes (more) sense what I'm looking for, so suggestions welcome - even if it is a pointer to sites to go read.
  2. Great job patiently explaining how to get LXC up and running. Looking for advice - hope this LXC forum thread is the right place... I was trying to find out more about LXC (on GitHub.com/lxc) and saw DistroBuilder - not sure if this is an overkill for a Dockerfile replacement - I found out the round-about way from this discussion! https://github.com/lxc/distrobuilder Looking at a GUI manager for LXC and not finding much out there when I saw LinuxContainers.org released Incus yesterday. https://github.com/lxc/incus The 'try-it' example looks super simple and also really easy to script (in place of Dockerfile). https://linuxcontainers.org/incus/try-it/ Is this an option? I was looking at PodMan (in a VM) to ease my custom Dockerfile (multiple) pains - so still looking around. https://podman.io
  3. Anyone running a Postgres database in a separate docker instance might need to add the following to the Postgres db after creating the db details for OpenProject: grant all on schema public to <openproject-admin>; For example - manually creating an OpenProject db & user and granting access (probably not 100% correct): docker exec -it postgres bash su - postgres psql -- list all databases (see: https://gist.github.com/Kartones/dd3ff5ec5ea238d4c546) \l CREATE DATABASE openproject CHARACTER SET utf8; CREATE USER <openproject-admin> WITH ENCRYPTED PASSWORD '????'; GRANT ALL PRIVILEGES ON DATABASE openproject TO <openproject-admin>; -- connect to database as user postgres \c openproject postgres grant all on schema public to <openproject-admin>;
  4. For what it is worth for any one else struggling with adding new ZFS "Pool Devices" None of the above advised helped, so did a "tail -f /var/log/syslog" and tried all the above again - no luck. I added 2 x new SSD's following the examples: Noticed on adding a ZFS "raid 0" in syslog that "/mnt/cache/*" was not empty (for some reason setting ZSF to "mirror" did not show the same error in the log). Run "rm -R /mnt/cache/*" after moved all from "cache" to "array" and restarted the server. All working now.
  5. Login to Postgres15 using adminer / pgadmin4 / psql and execute on each existing database: ALTER DATABASE <dbname> REFRESH COLLATION VERSION;
  6. These guys (above) did an incredible job explaining iDrive setup for UNRaid, though I still had to carefully piece parts together. Background: - I use "duplicity" to backup "stuff" to my UNRAID "/mnt/user/backup/duplicacy" folder - also backup other "stuff" to "/mnt/user/backup/" - I need iDrive to keep an encrypted copy of my backups from "/mnt/user/backup/" folder remotely Maybe someone will use this... iDrive Account Creation and UNRaid Docker Installation & Setup 1. create an iDrive account - Tom's Guide had a 95% discount (June 2023) for 10TB for 1 year, then ~$80py - see: https://www.tomsguide.com/best-picks/best-cloud-backup - affiliate: https://www.idrive.com/idrive/signup/el/tomsguide95?subtag=tomsguide-us-1529756557038911000 2. I used my own iDrive encryption key and store it in my Password Manager 3. Not setting the 2FA on iDrive yet (maybe later as it might interfere with login from UNRaid) Back to local UNRaid Terminal run: mkdir -p /mnt/user/appdata/idrive/etc/ touch /mnt/user/appdata/idrive/etc/idrivecrontab.json Install iDrive Docker container: 1. Search for idrive under APPS tab 2. Click on link labeled: "Click Here To Get More Results From DockerHub" 3. Choose taverty/idrive (https://hub.docker.com/r/taverty/idrive/) 4. Let unraid download and convert to use with unraid 5. Update docker container and create required paths below In "Update Container" screen select "ADVANCED VIEW" Icon URL: https://static.idriveonlinebackup.com/source/images/favicon.ico Add Path Permissions Container Path Host Path config_dir: R/W /opt/idrive/IDriveForLinux/idriveIt /mnt/user/appdata/idrive/config etc_files: R/W /etc/idrivecrontab.json /mnt/user/appdata/idrive/etc/idrivecrontab.json depends_dir: R/W /opt/idrive/IDriveForLinux/scripts/Idrivelib/dependencies /mnt/user/appdata/idrive/dependencies backup_dir: R/O** /home/backup /mnt/user/backup/ Run either option in UNRaid Terminal else...: 1. docker exec -it idrive /bin/bash or 2. Login to iDrive Docker Container Console Once login into iDrive Docker Container, execute: - NOTES: Backup Location could be HOSTNAME for easier identification root@xxxxxxxx:/opt/idrive/IDriveForLinux/scripts# ./account_setting.pl Please choose a method to authenticate your IDrive account: 1) Login using IDrive credentials 2) Login using your SSO account Enter your choice: 1 Enter your IDrive username: <email> Enter your IDrive password: Creating user directory... User directory has been created successfully. Enter your encryption key: Verifying your encryption key... Verification of encryption key is successful. Starting Dashboard service... Dashboard service started. Identifying your backup location, please wait... No backup location found. Enter your Backup Location [Note: Backup location should contain only letters, numbers and characters(-_)] [Optional]: <HOSTNAME> Setting up your backup location... Your Backup Location is set to "<HOSTNAME>". Enter your Restore Location [Optional]: Considering Default Restore Location as "/opt/idrive/IDriveForLinux/idriveIt/user_profile/root/<email>/Restore_Data". Your Restore Location is set to "/opt/idrive/IDriveForLinux/idriveIt/user_profile/root/<email>/Restore_Data/". Your restore from location is set to "<HOSTNAME>". Do you wish to modify (y/n)? Enter your choice: n Your restore from location is set to "<HOSTNAME>". Restore Location prompt is "Enabled". Do you want to "Disable" (y/n)? Enter your choice: n Software update notification is "Disabled". Do you want to "Enable" (y/n)? Enter your choice: n Enter your e-mail address [Optional]: No e-mail address is configured. Your default mount point for local backup is set to "/tmp". Default failed files percentage to notify as 'Failure' is set to 5%. If the total files failed for backup is more than 5%, then backup will be notified as failure. Your 'Ignore file/folder level permission error' option has been "Disabled". Your desktop access has been "Enabled". Your 'Upload multiple file chunks simultaneously' option has been "Enabled". Default missing files percentage to notify as 'Failure' is set to 5%. If the total files missing for backup is more than 5%, then backup will be notified as failure. Your default backupset scan interval is set to 'Daily Once' at 12:00. Your default bandwidth throttle is set to 100%. Your default Backupset file has been created successfully. Your default Restoreset file has been created successfully. Your default Local Backupset file has been created successfully. Your default Local Restoreset file has been created successfully. Your default Full Exclude list file has been created successfully. Your default Partial Exclude list file has been created successfully. Your default Regex Exclude list file has been created successfully. "<email>" is configured successfully. Do you want to login as "<email>" (y/n)? Enter your choice: y "<email>" is logged in successfully. ...the end of setup... root@xxxxxxxx:/opt/idrive/IDriveForLinux/scripts# Confirm iDrive local Docker container "daemon" (app) is running: root@xxxxxxxx:/opt/idrive/IDriveForLinux/scripts# ps --no-headers -o comm 1 entrypoint.sh Good, now read "readme.txt" (e.g. `more readme.txt`) 1. edit backup option from cmdline (if comfortable with 'vi') ./edit_supported_files.pl - option 1, add "/home/backup" to folder and ZZ to Save & Quit vi 2. Run your first backup ./Backup_Script.pl 3. Go check in iDrive Web console () what's happening https://www.idrive.com/idrive/in/console?path=/remote/devices That's it!