VRx

Moderators
  • Posts

    107
  • Joined

  • Last visited

Everything posted by VRx

  1. @Sinister Crayon@professeurx did You create database and database user before You installed Bacula-Server? I've checked on my lab and everything working ok. I've checked postgresql13 postgresql14 and postgresql15 (clean install) That was about curl-101 error with sqlite3 version, but could also happend in postgresql version. Not everything should work in the contenerized version. If you are aware of containerization, you probably know that its purpose is not to run multiple applications within one container and it should not be done. This is necessary here because Unraid out of the box does not support docker-compose. For the same reason, I did not include the Postgres database server in the image like most developers, and for a similar reason it has not been possible to use the MySQL database for a long time. Bacula is a large harvester and should not be run in a container, if it were fully supported Bacula developers would have released images for this purpose long ago. This solution was created for my own needs of backing up data from Unraid virtual machines and several raspberrypi. It was also an alpha project before implementing Bacula Web and later Bacularis in my production environment at work, moreover, it was also my professional development project, for my own satisfaction, and since I put some work into it I felt like sharing it, as you can see, I shared the code on github to which I shared a link, if you want to develop it, please go ahead. For myself and the needs of my Unraid Server, I would run bacula in Docker without UI, because I don't need it, it introduces unnecessary chaos in the configuration files. Of course, you can share ssh, move all configuration files outside the container, only then 90% of people can mess up more and expect help. Just like 90% of users will use 10% of this application's capabilities. What you may want to achieve with this image should be achieved by installing Bacula Server at least in a virtual machine, because then people are surprised that a some process has crashed.
  2. You are doing something that containerization is not intended for. If you need to extend the image with additional functionalities, use the image as a source, install packages, configure and thus use a new image, or use the image creation code and modify it to suit your needs, the image code is published by me on github. Additionally, by modifying the API settings, you may corrupt your copy of the image and require help later (when creating the image, I cannot predict what you will modify, and after updating the image, your settings may be overwritten). Did you provide the ip or hostname by entering DB_Host in the Bacula-Server parameters? Found my mistake, it will be resolved at the next image update. Thanks for the feedback
  3. I don't know what are You talking about. What You put before installing bacula? If You choose postgresql version, You need only to create database user and database in postgresql container/server, If You choose sqlite3 You do not need to do anything exept run bacula container. You must remember that if you tried to install the postgresql version and then want to install the sqlite version, I recommend clearing the paths on the unraid disk where the configuration files are installed. The container installed from scratch updates all passwords - user data, this was tested before releasing a new version of the image. If you want to connect the client to bacula, all you need to do is install the bacula client on the machine that is to be the client, usually called bacula-fd, and then add a new client in the WebUI Bacula-Server. Where do You install client, what are You talking about? What API deploying? What did You tried to do? You do not need to install any API on target machine. You need only bacula-fd. Everything You could configure from Bacule-Server WebUI panel. The exception is the backup of all types of databases, which requires writing a script on the client machine that will dump the database and Bacula will save the dump. The second option is to create remote access to the database and perform the dump from the Bacula server.
  4. Google translate @JonathanM i don't know if there is anybody who can help about bacula image. @professeurx did You update from previous version or this was new installation? Which postgresql server version did You use?
  5. which version did You use? postgresql vs sqlite3 and 11 or 13 maybe 15 ?
  6. You can check if docker is showing unhealthy status and try this kill $(pidof php-fpm7.4) $(pidof apache2) Bacula15 will be available within 1 hour (without s3/amazon plugin yes) There is a problem with s3 plugin and AWS plugin need some additional work. postgresql13 or above is needed for Bacula15 postgresql edition.
  7. @murkus sorry for the delay in replying. There are some known problems with compilation bacula v13.0.4 with S3 driver. Bacula released version 15.x Added Amazon Cloud driver (in replacement of libS3 cloud driver). After the first tests, it doesn't need many changes, but I still want to test the update process to avoid possible problems. Please be patient for a moment
  8. There is no good solution. eth0 inside container is not the same as host interface. You could use host network with zabbix agent container, but macvlan not allow to connect from other vlans/subnets configured on Unraid server, if You use some.
  9. czy polecenie zfs list pokazuje w/w udziały na liście ? jeśli nie to oznacza że to są zwykłe foldery, a nie datasety, musisz je przekształcić
  10. There is an additional change, currently there is no need to define the "Apache log path". Web interface logs currently go to the container (docker) logs.
  11. Application: Bacula - https://www.bacula.org/ Baculum App - https://www.baculum.app/ / Bacularis - https://bacularis.app/ Docker Hub: https://hub.docker.com/r/pwa666/bacula-server GitHub: https://github.com/vrx-666/bacula-server Bacula is a client / server backup application. Baculum/Bacularis is a web application that allows you to easily manage the bacula application. This container combines these applications to form a backup tool with a graphical interface. This container can be run in 5 different versions. Bacula server consists of several components: storage daemon - responsible for saving backups to disk or removable media (tape) bacula director - responsible for the entire backup process, contacts agents on client devices, indicates what resources should be backed up, how and where to send them (storage daemon) file daemon - is a bacula client available for many operating systems, responds to requests from bacula director. A relational database is necessary, where the bacula stores all information related to the performed backups. During installation, you can choose Bacula version 9.6 or 11. Version 9.6 allows you to use the mysql or postgresql database as well as sqlite3. Version 11 allows you to use the postgresql or sqlite3 database. The sqlite3-enabled version is not recommended for larger environments, but allows you to run this application without running mysql / postgresql as a separate container or server. If you already have postgresql or mysql running as your VM or docker application, I recommend choosing this version of the application. If you plan to use the PostgreSQL or MySQL version you should first create an empty database named "bacula", create a password user for that database and grant full privileges to this database for the created user.For mySQL: CREATE USER 'USERNAME' @ '%' IDENTIFIED BY 'PASSWORD'; CREATE DATABASE bacula; GRANT ALL PRIVILEGES ON `bacula`. * TO 'USERNAME' @ '%'; flush privileges; For postgreSQL: create user USERNAME with password 'PASSWORD'; create database bacula encoding 'SQL_ASCII' owner "USERNAME" template = template0; When running container there is some mandatory environment variables. Most important is to set up: SD_Host - should define the IP address at which the Bacula Server will be reachable for computers. If you are using a bridge network this parameter should be the ip of your UnRAID. If you set custom bridge, You shuld type in assigned IP. This variable is passed to the Bacula configuration and later during the backup it is passed to the clients so they can communicate with the Bacula server. The following are necessary when using an external database (postgreSQL, mySQL) DB_Host - database ip DB_Port - database port (could be omitted if default) DB_User - database user DB_Password In addition, there are two important ports that must be exposed: 9095 - Bacula Web 9103 - Bacula Storage The first allows access to the webUI Baculum App. The second is used to receive backups by the server from clients / computers. It can be changed, but you have to change the configuration of Storage Daemon and Bacula Director e.g. via webUI. I recommend that you leave these ports unchanged. There are also necessary paths to folders where configuration files, logs and backups will be saved, these variables are transparent in the UnRaid's docker form, I think that they do not need to be described here. If you have any questions, please ask below. [ Update 2022.05.30 ] End of development for Bacula 9.6 images versions! Older versions of the client work well with the newest server version. The last update of the bacula9.6 code was in December 2020. [ Update 2022.09.15 ] Email notification added. If You want Your's bacula could send emails, first of all You should set container hostname!!! Some of email providers could reject email, if sender will not introduce himself. Container hostname should be Your public reverse dns. Below You have environment variables that must be set to send bacula messages: EMAIL_Recipient - email address where You want bacula send notifications SMTP_Host - address of Your email provider's smtp server SMTP_Port - Your email provider smtp port (check provider documentation) SMTP_User - Email sender login (could be: user@domain or user, check Your email provider documentation) SMTP_Password - Password for email sender account SMTP_Port - smtp port for Your email provider smtp server (check provider documentation) - Yes this is ENV Variable not Docker Port Additionally, it is possible to set email log path pointing to container path /var/log/exim4 [ Update 2022.10.06 ] In the next image update, it will contain postgres client v14.5 (it gives possibility to use a newer version of the postgres server) [ Update 2024.01.02 ] Version 13 available. New Web UI interface Upgrade from version 11 requires change two params: 1. "Bacula WEB port" 9095 -> 9097 (container port) 2. "Baculum config" - path for persistent web configuration: there was /etc/baculum inside container at v11, in version 13 there is /etc/bacularis Be careful, configurations vary! You cannot map the same host folder for /etc/bacularis that was used for /etc/baculum. At the same time, this change forces to create any custom users if you created any in version 11. Unraid template will be updated soon, but it not update if You run it before. [ Update 2024.01.08 ] Postgresql Client v16 Bacularis/Baculum logs redirected to container (docker) logs - no need to bind path for apache (bacularis/baculum) logs
  12. @mikeyosm You could try to bind paths: /usr/bin/sensors from host to /usr/local/bin/sensors /usr/lib64/libsensors.so.5 to /usr/lib64/libsensors.so.5 [RO] And lmsensors should work inside the container
  13. Version 13 available. Two container configuration changes required: 1. Bacula WEB Port: container port 9095 should be changed to 9097 2. Baculum config: container path should be updated /etc/baculum -> /etc/bacularis (If You create any additional users for Baculum WEB UI, after update You need to create them again) 3*. If You prefer to change both container and mapped port 9095:9095 to 9097:9097 WebUI: http://[IP]:[PORT:9095]/ at the Advanced View should be changed to http://[IP]:[PORT:9097]/ Read Update at the first post.
  14. @ars92 It should work if you create the "rpz" zone via webmin as other zones. Yyou would just need to edit the named.conf.options file adding response-policy { zone "rpz_zone_name" }
  15. My strategy is to find free time. I work full-time for my employer who pays me, and this is a non-profit project in my free time. There is a link to github in the first post, you can fork it and try to work on the new version.
  16. This is Your first time with this image or maybe You are using Bacula some time?
  17. Oh damn but docker as well as qemu doesn't touch the cache at all. Ddoes this mean btrfs errors are for the server?
  18. Another crash, this time the container that was using all the RAM allocated to it was completely disabled. There is no information about OOM in the logs. I'm curious about your conclusions now Mr @JorgeB wolverine-diagnostics-20230612-0726.zip
  19. And ? After all, containers don't have their own kernel, so how would they have an oom killer. I do not see the connection. There is a limited ram for the container, the container has reached the limit, the process of this container has been annihilated by the oom-killer, everything was done according to the assumptions of docker. Did you find somewhere in the logs that docker daemon was stopped by oom-killer?
  20. OOM is within one container due to the memory limit for this container (8GB), the entire server is 64GB and is far from using all the operational memory.
  21. I have the following problem from time to time. It happens that the problem occurs two days in a row, and then does not occur for a month. wolverine-diagnostics-20230522-1837.zip
  22. So why You are using gui image? Get some bind9 image from docker hub You can try to copy config files. db.local and db.127 are files for loopback interface db.0 and db.255 are for broadcast You can create all of them but are not required to run the container, check their contents, you probably don't have entries there. Maybe you haven't verified yet, but my image doesn't provide any configuration files or zone files. I don't impose any configuration, you can create each zone, including loopback and broadcast, as you wish. The named.conf file also doesn't come with the image, it's only created when you click after logging into the GUI. Bind is very flexible in terms of configuration, you can put the contents of all these files inside named.conf or include hundreds of files if that's more convenient for you. Default configuration depends on the webmin, which in this case acts as webUI. I don't remember if the configuration is different for other base images, I've made some tests on ubuntu, but alpine linux is much smaller. I suppose that the creator of the image you used so far decided for you and used to include several configuration files in his image.