Uploaded October 2023 | Updated September 2026, 2 weeks ago
#Homer #Dashboard #Linux
Full steps can be found at i12bretro.github.io/tutorials/0590.html
--------------------------------------------------------------------
What is Homer?
--------------------------------------------------------------------
A dead simple static HOMepage for your servER to keep your services on hand, from a simple yaml configuration file. - github.com/bastienwirtz/homer
01. Log into the Linux device
02. Run the following commands in a terminal window
# update software repositories
sudo apt update
# install available software updates
sudo apt upgrade -y
# install prerequisites
sudo apt install git curl apache2 -y
# add nodejs software repository
curl -sL deb.nodesource.com/setup_16.x | sudo bash -
# install nodejs
sudo apt install nodejs -y
# clone the homer git repository
git clone github.com/bastienwirtz/homer.git ./homer
# change directory to the source code
cd homer
# checkout the latest version
git checkout "$(git tag --sort=v:refname | tail -n1)"
# clean npm cache
npm cache clean --force
# install npm dependencies
npm install
# fix npm vulnerabilities
npm audit fix
# build homer
npm run build
# copy the sample config.yml
sudo cp ./dist/assets/config.yml.dist ./dist/assets/config.yml
# copy the dist directory to web root
sudo cp ./dist /var/www/html/homer -r
03. Open a web browser and navigate to http://DNSorIP/homer
04. Welcome to Homer
05. To make changes to the dashboard, edit the config.yml file with the following command
# edit homer config.yml
sudo nano /var/www/html/homer/assets/config.yml
06. Press CTRL+O, Enter, CTRL+X to write the changes
07. Back in the web browser, refresh the page to view the changes
### Connect with me and others ###
★ Discord: discord.com/invite/EzenvmSHW8
★ Reddit: reddit.com/r/i12bretro
★ Twitter: twitter.com/i12bretro
#Homer #Dashboard #Linux
Full steps can be found at i12bretro.github.io/tutorials/0590.html
--------------------------------------------------------------------
What is Homer?
--------------------------------------------------------------------
A dead simple static HOMepage for your servER to keep your services on hand, from a simple yaml configuration file. - github.com/bastienwirtz/homer
01. Log into the Linux device
02. Run the following commands in a terminal window
# update software repositories
sudo apt update
# install available software updates
sudo apt upgrade -y
# install prerequisites
sudo apt install git curl apache2 -y
# add nodejs software repository
curl -sL deb.nodesource.com/setup_16.x | sudo bash -
# install nodejs
sudo apt install nodejs -y
# clone the homer git repository
git clone github.com/bastienwirtz/homer.git ./homer
# change directory to the source code
cd homer
# checkout the latest version
git checkout "$(git tag --sort=v:refname | tail -n1)"
# clean npm cache
npm cache clean --force
# install npm dependencies
npm install
# fix npm vulnerabilities
npm audit fix
# build homer
npm run build
# copy the sample config.yml
sudo cp ./dist/assets/config.yml.dist ./dist/assets/config.yml
# copy the dist directory to web root
sudo cp ./dist /var/www/html/homer -r
03. Open a web browser and navigate to http://DNSorIP/homer
04. Welcome to Homer
05. To make changes to the dashboard, edit the config.yml file with the following command
# edit homer config.yml
sudo nano /var/www/html/homer/assets/config.yml
06. Press CTRL+O, Enter, CTRL+X to write the changes
07. Back in the web browser, refresh the page to view the changes
### Connect with me and others ###
★ Discord: discord.com/invite/EzenvmSHW8
★ Reddit: reddit.com/r/i12bretro
★ Twitter: twitter.com/i12bretro
![Run MyBB - Open Source Forum Software - in Docker
#MyBB #Forum #Docker
*** Updated 05/24/2024
Full steps can be found at https://i12bretro.github.io/tutorials/0932.html
What is MyBB?
MyBB is the free and open source forum software powering thousands of engaging, vibrant, and unique communities across the internet. - https://mybb.com/
Installing Docker
01. Log into the Linux host and run the following commands in a terminal window
# install prerequisites
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
# add docker gpg key
curl -fsSL https://download.docker.com/linux/$(awk -F= /^ID=/{ print $NF } /etc/os-release)/gpg | sudo apt-key add -
# add docker software repository
sudo add-apt-repository deb [arch=$(dpkg print-architecture)] https://download.docker.com/linux/$(awk -F= /^ID=/{ print $NF } /etc/os-release) $(lsb_release -cs) stable
# install docker
sudo apt install docker-ce docker-compose containerd.io -y
# enable and start docker service
sudo systemctl enable docker && sudo systemctl start docker
# add the current user to the docker group
sudo usermod -aG docker $USER
# reauthenticate for the new group membership to take effect
su - $USER
Running MyBB Container
01. Continue with the following commands in a terminal window
# create working directories
mkdir ~/docker/mybb -p && mkdir ~/docker/postgresql -p && mkdir ~/docker/nginx -p
# set owner of docker directory
sudo chown $USER:$USER ~/docker -R
# allow the container to write to working directories
sudo chmod a+rwx -R ~/docker/mybb
# download the nginx conf file
wget -O ~/docker/nginx/default.conf https://gist.githubusercontent.com/kawaii/ed2fbbf11309b8f635a623fa87abce8d/raw/3a5a6e36b238e55aaef519693ca16c82fbafd2fd/default.conf
# create containers network
docker network create containers
# run the postgesql container
docker run -d name postgres network containers -p 5432:5432 -e POSTGRES_USER=mybb_rw -e POSTGRES_PASSWORD=My44_rw$ -e POSTGRES_DB=mybb -v ~/docker/postgresql:/var/lib/postgresql/data restart=unless-stopped postgres:latest
# run the mybb container
docker run -d name mybb -v ~/docker/mybb:/var/www/html:rw network containers restart=unless-stopped mybb/mybb
# run nginx webserver container
docker run -d name nginx network containers -p 8081:80 -v ~/docker/mybb:/var/www/html:ro -v ~/docker/nginx:/etc/nginx/conf.d:ro restart=unless-stopped nginx
02. Open a web browser and navigate to http://DNSorIP:8081
03. Click Next at the Welcome screen
04. Click Next at the License Agreement
05. Click Next at the Requirements Check
06. Complete the Database Configuration as shown below
Database Engine: PostgreSQL
Database Server Hostname: postgres
Database Username: mybb_rw
Database Password: My44_rw$
Database Name: mybb
Table Prefix: mybb_
07. Click Next after the table creation completes
08. Click Next to complete the Table Population
09. Click Next at the Theme Insertion screen
10. Modify the Board Configuration form as needed ≫ Click Next
11. Create an administrator account by entering a Username, Password and Email Address ≫ Click Next
12. Click the Admin Control Panel link
13. Login with the administrator username and password created earlier
14. Welcome to MyBB
Documentation: https://github.com/mybb/docker
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Run MyBB - Open Source Forum Software - in Docker](https://i.ytimg.com/vi/cBrApDiqw3o/mqdefault.jpg)


![Run VSCodium Containerized in Docker
#VSCodium #Linux #Docker
Full steps can be found at https://i12bretro.github.io/tutorials/0985.html
What is VSCodium?
VSCodium is a clone of Microsoft’s Visual Studio Code. The project’s sole aim is to provide you with ready to use binaries without Microsoft’s telemetry and tracking code. - https://vscodium.com/
Installing Docker
01. Log into the Linux Docker host and run the following commands in a terminal window
# install prerequisites
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
# add docker gpg key
curl -fsSL https://download.docker.com/linux/$(awk -F= /^ID=/{ print $NF } /etc/os-release)/gpg | sudo apt-key add -
# add docker software repository
sudo add-apt-repository deb [arch=$(dpkg print-architecture)] https://download.docker.com/linux/$(awk -F= /^ID=/{ print $NF } /etc/os-release) $(lsb_release -cs) stable
# install docker
sudo apt install docker-ce docker-compose containerd.io -y
# enable and start docker service
sudo systemctl enable docker && sudo systemctl start docker
# add the current user to the docker group
sudo usermod -aG docker $USER
# reauthenticate for the new group membership to take effect
su - $USER
Running VSCodium
01. Continue with the following commands in a terminal window
# list current uid and gid, note these for later
id $user
# create working directories
mkdir ~/docker/vscodium/{config,code} -p
# run the vscodium docker image
# replace PUID, GUID with the output of the id $user command above
docker run -d name=vscodium cap-add=IPC_LOCK -e PUID=1000 -e PGID=1000 -e TZ=America/New_York -p 8003:3000 -v ~/docker/vscodium/config:/config -v ~/docker/vscodium/code:/code shm-size=1gb restart unless-stopped lscr.io/linuxserver/vscodium:latest
02. Open a web browser and navigate to http://localhost:8003
03. Welcome to VSCodium
Source: https://hub.docker.com/r/linuxserver/vscodium
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Run VSCodium Containerized in Docker](https://i.ytimg.com/vi/dJgh13kYmoI/mqdefault.jpg)






![Create a Secure Web Based Password Vault with Keepass Web
#KeepassWeb #PasswardVault #Linux
Full steps can be found at https://i12bretro.github.io/tutorials/0233.html
01. Log into the Debian device
02. Run the following commands in a terminal:
# update repositories and install any available software updates
sudo apt update
sudo apt upgrade
# install apache2
sudo apt install apache2
# download and extract keepass web
wget https://github.com/keeweb/keeweb/archive/gh-pages.zip
sudo unzip gh-pages.zip -d /var/www/html/
sudo mv /var/www/html/keeweb-gh-pages /var/www/html/keepass
# create webdav directory and set permissions
sudo mkdir /var/www/html/webdav
sudo chown -R www-data:www-data /var/www/html/webdav
# change permissions on the newly setup application folder
sudo chown -R www-data:www-data /var/www/html/keepass
# create a new keepass.conf file to configure the site
sudo nano /etc/apache2/sites-available/keepass.conf
03. Paste the following directives into keepass.conf
DavLockDB /var/www/html/webdav/DavLock
≪Location /keepass ≫
RewriteEngine on
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ blank.html [R=200,L,E=HTTP_ORIGIN:%{HTTP:ORIGIN}]
# Dont require LDAP authentication for a healthcheck
SetEnvIf Request_URI ^/healhcheck accessgranted=1
Order deny,allow
Satisfy any
Deny from all
Allow from env=accessgranted
AuthType Basic
AuthBasicProvider ldap
AuthLDAPURL ldap://i12bretro.local:389/DC=i12bretro,DC=local?sAMAccountName?sub?(objectClass=user) NONE
AuthLDAPBindDN readonly_svc@i12bretro.local
AuthLDAPBindPassword Read0nly!!
AuthName Restricted Area [i12bretro.local]
# to authenticate a domain group, specify the full DN
AuthLDAPGroupAttributeIsDN on
require ldap-group CN=WebAuthAccess,CN=Users,DC=i12bretro,DC=local
≪/Location≫
≪Location /webdav≫
DAV On
AuthType Basic
AuthName webdav
Options Indexes
Header always set Access-Control-Allow-Origin *
Header always set Access-Control-Allow-Headers origin, content-type, cache-control, accept, authorization, if-match, destination, overwrite
Header always set Access-Control-Expose-Headers ETag
Header always set Access-Control-Allow-Methods GET, HEAD, POST, PUT, OPTIONS, MOVE, DELETE, COPY, LOCK, UNLOCK
Header always set Access-Control-Allow-Credentials true
≪/Location≫
04. Edit the index.html file and modify the kw-config meta tag, setting the value to config.json
#
sudo nano /var/www/html/keepass/index.html
05. Press CTRL+O, Enter, CTRL+X to write the changes to index.html
06. Create and edit config.json to by running the following command:
sudo nano /var/www/html/keepass/config.json
07. Paste the following in to config.json
{
settings: {
theme: fb,
autoSave: true,
autoSaveInterval: 1,
canOpenDemo: false,
dropbox: false,
gdrive: false,
onedrive: false,
canExportXml: true
},
files: [{
storage: webdav,
name: Database,
path: /webdav/database.kdbx
}]
}
08. Press CTRL+O, Enter, CTRL+X to write the changes to config.json
09. Continue by executing the following commands in terminal:
# enable the keepass site and required Apache modules
sudo a2ensite keepass
sudo a2enmod dav dav_fs ldap authnz_ldap rewrite headers
# restart apache2 service for the changes to take effect
sudo systemctl restart apache2
10. Open a web browser and navigate to http://DNSorIP/keepass
11. Authenticate with a valid LDAP user account
12. Click the New icon
13. Click the New link in the lower left hand corner
14. Enter a Master password and re-type it to confirm
15. Enter a Name for the keepass database
16. Click the Save to... button ≫ File
17. Save the database to ~/database.kdbx
18. Close the browser
19. Continue by executing the following commands in terminal:
# copy the keepass database to webdav directory
sudo mv ~/database.kdbx /var/www/html/webdav/
20. Open a web browser and navigate to http://DNSorIP/keepass
....Full steps can be found on GitHub [link at the top]
### Connect with me and others ###
★ Discord: https://discord.com/invite/EzenvmSHW8
★ Reddit: https://reddit.com/r/i12bretro
★ Twitter: https://twitter.com/i12bretro Create a Secure Web Based Password Vault with Keepass Web](https://i.ytimg.com/vi/fJkWzZS8KVA/mqdefault.jpg)