You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
lars-hagen 74bda1b1be
Ability to issue certs using acme.sh
5 years ago
.travis update travis 5 years ago
acme Added acme folder to gitignore 5 years ago
bin Ability to issue certs using acme.sh 5 years ago
logs added bins to remove and add sites, changed dockerfile. added new format 5 years ago
lsws ignore files in lsws, updated cert path in docker-compose, removed .DS_STORE 5 years ago
sites fixed addDomain.sh, auto correct folder permissions, included localhost 5 years ago
.env Changing bins for docker template 5 years ago
.gitignore Moving dockerfiles to a different repo, cleaning up the environment 5 years ago
.travis.yml update travis 5 years ago
LICENSE few update 5 years ago
README.md Update README.md 5 years ago
docker-compose.yml Test acme script and persistent certs 5 years ago

README.md

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

OpenLiteSpeed WordPress Docker Container (Beta)

Build Status OpenLiteSpeed docker pulls beta pulls

Install a Lightweight WordPress container with OpenLiteSpeed 1.6.5+ & PHP 7.3+ based on Ubuntu 18.04 Linux.

Prerequisites

  1. Install Docker
  2. Install Docker Compose
  3. Clone this repository or copy the files from this repository into a new folder:
git clone https://github.com/litespeedtech/ols-docker-env.git

Configuration

Edit the .env file to update the demo site domain, default MySQL user, and password.

Installation

Open a terminal, cd to the folder in which docker-compose.yml is saved, and run:

docker-compose up

Components

The docker image installs the following packages on your system:

Component Version
Linux Ubuntu 18.04
OpenLiteSpeed Latest version
MariaDB Stable version: 10.3
PHP Stable version: 7.3
LiteSpeed Cache Latest from WordPress.org
Certbot Latest from Certbot's PPA
WordPress Latest from WordPress
phpMyAdmin Latest from dockerhub

Data Structure

There is a sites directory next to your docker-compose.yml file, and it contains the following:

  • sites/DOMAIN/html/ Document root (the WordPress application will install here)
  • sites/DOMAIN/logs/ - Access log storage

Usage

Starting a Container

Start the container with the up or start methods:

docker-compose up

You can run with daemon mode, like so:

docker-compose up -d

The container is now built and running.

Stopping a Container

docker-compose stop

Removing Containers

To stop and remove all containers, use the down command:

docker-compose down

Installing Packages

Edit the docker-compose.yml file, and add the package name as an extensions argument. We used vim in this example:

litespeed:
  build:
    context: ./config/litespeed/xxx/
    args:
      extensions: vim

After saving the changed configuration, run with --build:

docker-compose up --build

Setting the WebAdmin Password

We strongly recommend you set your personal password right away.

bash bin/webadmin.sh my_password

Starting a Demo Site

After running the following command, you should be able to access the WordPress installation with the configured domain. By default the domain is http://localhost.

bash bin/demosite.sh

Creating a Domain and Virtual Host

bash bin/domain.sh -add example.com

Creating a Database

You can either automatically generate the user, password, and database names, or specify them. Use the following to auto generate:

bash bin/database.sh -domain example.com

Use this command to specify your own names, substituting user_name, my_password, and database_name with your preferred values:

bash bin/database.sh -domain example.com -user user_name -password my_password -database database_name

Installing a WordPress Site

To preconfigure the wp-config file, run the database.sh script for your domain, before you use the following command to install WordPress:

./bin/appinstall.sh -app wordpress -domain example.com

Applying a Let's Encrypt Certificate

Use the root domain in this command, and it will check for a certificate and automatically apply one with and without www:

./bin/cert.sh example.com

Update Web Server

To upgrade web server to latest stable version, run

bash bin/webadmin.sh -lsup

Accessing the Database

After installation, you can use phpMinAdmin to access the database by visiting http://127.0.0.1:8080 or https://127.0.0.1:8443. The default username is root, and the password is the same as the one you supplied in the .env file.

Support & Feedback

If you still have a question after using OpenLiteSpeed Docker, you have a few options.

Pull requests are always welcome