{"id":47997590,"url":"https://github.com/cmer81/docker-ipboard","last_synced_at":"2026-04-04T12:03:12.147Z","repository":{"id":82898506,"uuid":"147969256","full_name":"cmer81/docker-ipboard","owner":"cmer81","description":"Docker Nginx PHP 8 image for Ipboard Invision Community","archived":false,"fork":false,"pushed_at":"2024-11-17T09:09:26.000Z","size":2605,"stargazers_count":10,"open_issues_count":0,"forks_count":9,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-01-12T23:23:59.730Z","etag":null,"topics":["docker","docker-image","invision","invision-community","invision-power-board","ipboard","nginx","php","php-fpm"],"latest_commit_sha":null,"homepage":"https://nide.gg/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cmer81.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-09-08T20:55:28.000Z","updated_at":"2025-11-08T04:05:26.000Z","dependencies_parsed_at":null,"dependency_job_id":"ee65a0af-dc3f-4b2a-a78d-d1bc26227849","html_url":"https://github.com/cmer81/docker-ipboard","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cmer81/docker-ipboard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmer81%2Fdocker-ipboard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmer81%2Fdocker-ipboard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmer81%2Fdocker-ipboard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmer81%2Fdocker-ipboard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cmer81","download_url":"https://codeload.github.com/cmer81/docker-ipboard/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cmer81%2Fdocker-ipboard/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31398770,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-04T10:20:44.708Z","status":"ssl_error","status_checked_at":"2026-04-04T10:20:06.846Z","response_time":60,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-image","invision","invision-community","invision-power-board","ipboard","nginx","php","php-fpm"],"created_at":"2026-04-04T12:03:11.385Z","updated_at":"2026-04-04T12:03:12.136Z","avatar_url":"https://github.com/cmer81.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker Nginx Image for Invision Community Ipboard\n\n![Ipboard](https://dne4i5cb88590.cloudfront.net/invisionpower-com/monthly_2019_09/og.jpg.5e6c57e8dfa140ce4ac18f1e757d3b45.jpg)\n\nThis container image includes PHP 8.2 and [Nginx](https://www.nginx.com/) for Invision Community.\n\n## Description\n\nPHP 8.2 is available as a container and serves as a base platform for building and running various PHP 8.2 applications and frameworks.\n\nIpboard Invision Community is not included in the container. For more information and to download files, visit the [Invision Community website](https://invisioncommunity.com/).\n\n## Usage\n\n### Basic Usage\n\nExample with local storage:\n\n```bash\ndocker run -d --name ipboard -v \"{your-ipboard-installation-files}\":/app -e WEB_ALIAS_DOMAIN=mydomain.com cmer81/ipboard:latest\n```\n\n### Database Configuration\n\nBy default, this container does not contain the database for Ipboard. You need to use either an existing database or a database container.\n\nThe Ipboard setup wizard (which should appear on first run) allows connecting to an existing MySQL/MariaDB. You can also link a database container, e.g., `--link my-mysql:mysql`, and then use `mysql` as the database host during setup.\n\n### Persistent Data\n\nIpboard installation and data beyond the database (file uploads, etc.) are stored in the [unnamed docker volume](https://docs.docker.com/engine/tutorials/dockervolumes/#adding-a-data-volume) at `/app`. \n\nTo make data persistent and enable backups, use a named docker volume or mount a host folder:\n\nIpboard volume:\n```console\ndocker run -d \\\n    -p 443:443 -p 80:80 \\\n    -v ipboard_html:/app \\\n    cmer81/ipboard:latest\n```\n\nDatabase volume:\n```console\ndocker run -d \\\n    -v db:/var/lib/mysql \\\n    mariadb\n```\n\n## Custom Build\n\nBuild your custom image:\n\n```bash\ndocker build --pull -t \"ipboard\" .\n```\n\n### Accessing the Application\n\n```bash\ncurl 127.0.0.1\n```\n\n## Configuration\n\n### Environment Variables\n\n#### PHP Modules\n\nDeactivate unwanted PHP modules using the `PHP_DISMOD` environment variable:\n\n```bash\nPHP_DISMOD=ioncube,redis\n```\n\n#### PHP.ini Variables\n\nSet PHP configuration dynamically using environment variables:\n\n| Environment Variable | Description | Default |\n|---------------------|-------------|---------|\n| `php.{setting-key}` | Sets the `{setting-key}` as PHP setting | |\n| `PHP_DATE_TIMEZONE` | `date.timezone` | `UTC` |\n| `PHP_DISPLAY_ERRORS` | `display_errors` | `0` |\n| `PHP_MEMORY_LIMIT` | `memory_limit` | `512M` |\n| `PHP_MAX_EXECUTION_TIME` | `max_execution_time` | `300` |\n| `PHP_POST_MAX_SIZE` | `post_max_size` | `50M` |\n| `PHP_UPLOAD_MAX_FILESIZE` | `upload_max_filesize` | `50M` |\n| `PHP_OPCACHE_MEMORY_CONSUMPTION` | `opcache.memory_consumption` | `256` |\n| `PHP_OPCACHE_MAX_ACCELERATED_FILES` | `opcache.max_accelerated_files` | `7963` |\n| `PHP_OPCACHE_VALIDATE_TIMESTAMPS` | `opcache.validate_timestamps` | `default` |\n| `PHP_OPCACHE_REVALIDATE_FREQ` | `opcache.revalidate_freq` | `default` |\n| `PHP_OPCACHE_INTERNED_STRINGS_BUFFER` | `opcache.interned_strings_buffer` | `16` |\n\n#### PHP FPM Variables\n\nConfigure PHP-FPM settings dynamically:\n\n| Environment Variable | Description | Default |\n|---------------------|-------------|---------|\n| `fpm.global.{setting-key}` | Sets global master process settings | |\n| `fpm.pool.{setting-key}` | Sets pool settings | |\n| `FPM_PROCESS_MAX` | `process.max` | distribution default |\n| `FPM_PM_MAX_CHILDREN` | `pm.max_children` | distribution default |\n| `FPM_PM_START_SERVERS` | `pm.start_servers` | distribution default |\n| `FPM_PM_MIN_SPARE_SERVERS` | `pm.min_spare_servers` | distribution default |\n| `FPM_PM_MAX_SPARE_SERVERS` | `pm.max_spare_servers` | distribution default |\n| `FPM_PROCESS_IDLE_TIMEOUT` | `pm.process_idle_timeout` | distribution default |\n| `FPM_MAX_REQUESTS` | `pm.max_requests` | distribution default |\n| `FPM_REQUEST_TERMINATE_TIMEOUT` | `request_terminate_timeout` | distribution default |\n| `FPM_RLIMIT_FILES` | `rlimit_files` | distribution default |\n| `FPM_RLIMIT_CORE` | `rlimit_core` | distribution default |\n\n#### Web Environment Variables\n\n| Environment Variable | Description | Default |\n|---------------------|-------------|---------|\n| `WEB_DOCUMENT_ROOT` | Document root for webserver | `/app` |\n| `WEB_DOCUMENT_INDEX` | Index document | `index.php` |\n| `WEB_ALIAS_DOMAIN` | Domain aliases | `*.vm` |\n| `WEB_PHP_SOCKET` | PHP-FPM socket address | `127.0.0.1:9000` |\n| `SERVICE_PHPFPM_OPTS` | PHP-FPM command arguments | *empty* |\n| `WEB_PHP_TIMEOUT` | Webserver PHP request | `600` |\n| `SERVICE_NGINX_OPTS` | Nginx command arguments | *empty* |\n| `SERVICE_NGINX_CLIENT_MAX_BODY_SIZE` | Nginx `client_max_body_size` | `50m` |\n\n## Filesystem Layout\n\n### Directories\n\n| Directory | Description |\n|----------|-------------|\n| `/opt/docker/etc/nginx` | Nginx configuration |\n| `/opt/docker/etc/nginx/ssl` | Nginx SSL configuration with example server.crt, server.csr, server.key |\n\n### Configuration Files\n\n| File | Description |\n|------|-------------|\n| `/opt/docker/etc/nginx/main.conf` | Main include file (will include `global.conf`, `php.conf` and `vhost.conf`) |\n| `/opt/docker/etc/nginx/global.conf` | Global Nginx configuration options |\n| `/opt/docker/etc/nginx/php.conf` | PHP configuration (connection to FPM) |\n| `/opt/docker/etc/nginx/vhost.common.conf` | Vhost common stuff (placeholder) |\n| `/opt/docker/etc/nginx/vhost.conf` | Default vhost |\n| `/opt/docker/etc/nginx/vhost.ssl.conf` | Default SSL configuration for vhost |\n| `/opt/docker/etc/php/fpm/php-fpm.conf` | PHP FPM daemon configuration |\n| `/opt/docker/etc/php/fpm/pool.d/application.conf` | PHP FPM pool configuration |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcmer81%2Fdocker-ipboard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcmer81%2Fdocker-ipboard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcmer81%2Fdocker-ipboard/lists"}