|
|
||
|---|---|---|
| config | ||
| .dockerignore | ||
| .gitignore | ||
| Dockerfile | ||
| README.md | ||
| composer.json | ||
| composer.lock | ||
| config.json | ||
| docker-compose.yml | ||
| entrypoint-theme.sh | ||
| entrypoint.sh | ||
| functions.php | ||
| plugin-list.txt | ||
| style.css | ||
README.md
indy-wp - staging an indymedia wordpress site on docker for development
Independent Media Center – a ready‑to‑run WordPress codebase that recreates the archived indymedia.org.
The stack runs inside Docker and pulls all required plugins via Composer.
Indy Wordpress on Docker
The theme repository is available at: https://codeberg.org/radioparalelo/indy-wp-theme
This repository is mirrored at: https://unite.openworlds.info/indymedia/indy-wp
Other indymedia open code projects: https://unite.openworlds.info/indymedia
About security: This code does not, as of now, contain security modifications. Wordpress usually runs with internal logs which are to be considered unsafe. This code needs to be modified to run safely on a server. Plugins on wordpress are also a vector of potencial attack.
If you are able to modify the code, or have any other ideas, please feel free to do so.
join the Open Media Network project: https://unite.openworlds.info/indymedia
Contribute: https://unite.openworlds.info/indymedia/indy-wp
Wiki: https://unite.openworlds.info/indymedia/indy-wp/wiki
Issues: https://unite.openworlds.info/indymedia/indy-wp/issues
Features
- Newswire – Publish and aggregate short news items.
- Open Publishing – Front‑end submission for articles, podcasts, and videos.
- Media Archive – Store and browse images, audio, and video with searchable metadata.
Alternatives!
This is an experimental codebase, for development purposes.
There are several alternatives for hosting indymedia websites, created by indymedia collectives.
See:
-
IMC Press https://0xacab.org/imcpress
-
Oscailt CMS http://www.indymedia.ie/oscailt/ https://sourceforge.net/projects/oscailt/
-
Drupal https://linksunten.indymedia.org/de/node/770/index.html
-
Indybay https://gitlab.com/indybay
-
MIR https://web.archive.org/web/20050308225521/http://mir.indymedia.de/en/2001/08/5.shtml https://web.archive.org/web/20080512092418/http://mir.indymedia.org/
-
Active https://web.archive.org/web/20050308055010/http://www.active.org.au/doc/
-
Sandstorm https://sstorm.sourceforge.net/
-
Dada IMC https://web.archive.org/web/20020910064521/http://docs.indymedia.org/twiki/bin/view/Devel/DadaImc
Included Plugins
When you build this project the plugins below are fetched from WPackagist (a Composer mirror of the WordPress.org plugin directory) and installed.
indymedia/indymedia-wordpress – Core IndyMedia functionality.
- activitypub – Federated social publishing (ActivityPub). Source: https://wordpress.org/plugins/activitypub/
- antispam-bee – Spam protection for comments/forms. Source: https://wordpress.org/plugins/antispam-bee/
- archiveo-importer-wayback – Import Wayback Machine archives. Source: https://wordpress.org/plugins/archiveo-importer-wayback/
- easyfonts – Simple font management. Source: https://wordpress.org/plugins/easyfonts/
- embed-privacy – Privacy‑friendly embeds (YouTube, etc.). Source: https://wordpress.org/plugins/embed-privacy/
- exif-remover – Strips EXIF data from uploaded images. Source: https://wordpress.org/plugins/exif-remover/
- frontend-post-submission-manager-lite – Front‑end post submission handling. Source: https://wordpress.org/plugins/frontend-post-submission-manager-lite/
- indieweb – IndieWeb micro‑formats, endpoints, webmentions. Source: https://wordpress.org/plugins/indieweb/
- lh-wayback-machine – Wayback Machine integration. Source: https://wordpress.org/plugins/lh-wayback-machine/
- og – Adds Open Graph meta tags. Source: https://wordpress.org/plugins/og/
- pretty-rss-feeds – Cleaner RSS feed output. Source: https://wordpress.org/plugins/pretty-rss-feeds/
- remove-ip – Anonymizes IP addresses in comments. Source: https://wordpress.org/plugins/remove-ip/
- safe-paste – Secure paste‑bin functionality. Source: https://wordpress.org/plugins/safe-paste/
- syndication-links – Auto‑generates syndication links (Twitter, Mastodon, etc.). Source: https://wordpress.org/plugins/syndication-links/
- unpredictable-image-filenames – Randomizes uploaded image filenames for privacy. Source: https://wordpress.org/plugins/unpredictable-image-filenames/
- webmention – Webmention support (IndieWeb). Source: https://wordpress.org/plugins/webmention/
- wp-super-cache – Page‑caching to improve performance. Source: https://wordpress.org/plugins/wp-super-cache/
Get it running in three steps
-
Clone the repository
git clone https://codeberg.org/radioparalelo/indy-wp.git indymedia-wp
cd indymedia-wp
-
Build the Docker image
docker build -t indymedia:test .
-
Start the container
docker compose up --build -d
Then open http://localhost:8080/wp-admin in a browser, run the WordPress installer, and activate the plugins you need.
What the project contains
| Component | Description |
|---|---|
| Dockerfile | Builds a clean wordpress:php8.2-apache image, installs Composer, WP‑CLI, and copies your custom theme. |
| composer.json / composer.lock | Lists the 18 plugins (WPackagist mirror) that are installed into wp-content/plugins/. |
| indy‑wp | Indymedia custom theme (built and ready to use). |
| config/php.ini | Optional PHP tweaks (upload limits, memory, etc.). |
| docker‑compose.yml | Docker compose file for a full stack (MySQL, phpMyAdmin, etc.). |
| README.md | This file. |
Installing the plugins
After the container is running, open the WordPress admin, go to Plugins → Installed Plugins, and click Activate for each plugin you want.
All plugins are already present in wp-content/plugins/ thanks to composer install that runs during the image build.
Adding or updating plugins
-
Edit
composer.json– add or change a package from WPackagist, e.g.:"require": { "wpackagist-plugin/wp-super-cache": "^2.0", "wpackagist-plugin/new-plugin": "^1.2" } -
Re‑build the image (step 2 above).
Composer will fetch the new versions and place them in the image.
About
The core theme is Twenty Twenty‑Five, licensed under GPL v2 or later.
All other code in this repository is also distributed under the GPL v2+ (see individual plugin licenses).
Contributing
- Fork the repo.
- Make your changes (code, docs, plugin list, etc.).
- Submit a pull request.
