- Maintained by: Typecho Dev Team
- Where to get help: the Typecho Docker GitHub issues
$ docker run --name typecho-server -e TYPECHO_SITE_URL=https://your-domain.com -d joyqi/typecho:nightly-php7.4-apacheversion: '3.7'
services:
typecho:
image: joyqi/typecho:nightly-php7.4-apache
container_name: typecho-server
restart: always
environment:
- TYPECHO_SITE_URL=https://your-domain.com
ports:
- 8080:80
volumes:
- /var/typecho:/app/usr- Replace
your-domain.comwith your own domain name. - Port
8080is just an example, you can change it to any port you want. - Mount local directory
/var/typechoto container directory/app/usrfor persistent data.
| Name | Description |
|---|---|
| TIMEZONE | default: UTCServer timezone, eg: Asia/Shanghai |
| MEMORY_LIMIT | PHP memory limit, eg: 100M |
| MAX_POST_BODY | eg: 50M |
| TYPECHO_INSTALL | default: 0Set to 1 if you want to run installation script automatically. |
| TYPECHO_DB_ADAPTER | default: Pdo_MysqlDatabase driver for typecho, could be: Pdo_Mysql, Pdo_SQLite, Pdo_Pgsql, Mysqli, SQLite, Pgsql. |
| TYPECHO_DB_HOST | default: localhostDatabase server host, only available for mysql and pgsql drivers. |
| TYPECHO_DB_PORT | default: 3306(for mysql) or 5432(for pgsql)Database server port, only available for mysql and pgsql drivers. |
| TYPECHO_DB_USER | * required for mysql and pgsql driversDatabase username, only available for mysql and pgsql drivers. |
| TYPECHO_DB_PASSWORD | * required for mysql and pgsql driversDatabase password, only available for mysql and pgsql drivers. |
| TYPECHO_DB_FILE | * required for sqlite driverDatabase file storage path, only available for sqlite driver. |
| TYPECHO_DB_DATABASE | * required for mysql and pgsql driversDatabase name of typecho, only available for mysql and pgsql drivers. |
| TYPECHO_DB_PREFIX | default: typecho_The prefix of all tables. |
| TYPECHO_DB_ENGINE | default: InnoDBMysql database engine, only available for mysql driver. |
| TYPECHO_DB_CHARSET | default: utf8(for pgsql) or utf8mb4(for mysql)Database charset, only available for mysql and pgsql drivers. |
| TYPECHO_DB_NEXT | default: noneThe action to perform when there are already having some application tables in database. * none: Do nothing, just exit.* keep: Keep these tables, and skip the init step.* force: Delete these tables, and init data again. |
| TYPECHO_SITE_URL | * requiredYour website url, for example: https://your-domain.com |
| TYPECHO_USER_NAME | default: typechoThe admin username to create. |
| TYPECHO_USER_PASSWORD | default: a random 8 characters string. The admin password to create. |
| TYPECHO_USER_MAIL | default: [email protected]The email address of admin to create. |
| Image Tag | Port | Description |
|---|---|---|
*-fpm |
9000 | FastCGI port for php-fpm. |
*-apache |
80 | Http port for apache. |
*-cli |
No port exposed. |
You can mount some local directories to these container directories for persistent data.
| Container Directory | Description |
|---|---|
/app/usr |
Typecho data directory. If you mount this directory to local, the following directories will be included. |
/app/usr/plugins |
Typecho plugins directory. |
/app/usr/themes |
Typecho themes directory. |
/app/usr/uploads |
Typecho uploads directory. |