# Kuinka ottaa WordPress käyttöön Docker-kontteissa

Opi käyttämään WordPress-asennusta Docker-kontteissa sekä manuaalisesti että Docker Compose -työkalun avulla. WordPress-kehittäjille on hyödyllistä käyttää WordPressiä Docker-kontteissa. Dockerin avulla on helppo testata erilaisia WordPress-kokoonpanoja ja käynnistää uusi WordPress-asennus vain muutamalla yksinkertaisella komennolla.

## Vaatimukset

Jotta WordPress toimisi sujuvasti Docker-kontteissa, tarvitset ajantasaisen ja tuetun Linux-jakelun. Vanhemmat versiot, kuten CentOS 7 tai Ubuntu 14.04, ovat vanhentuneita, ja ne tulisi korvata nykyaikaisilla vaihtoehdoilla. Suositeltavia vaihtoehtoja ovat:

- Ubuntu 22.04 LTS tai uudempi
- [Debian 12](https://www.ionos.com/fi-fi/digitalguide/palvelin/osaaminen/debian-yleiskaeyttoeinen-jaerjestelmaeohjelmisto/) tai uudempi
- Red Hat Enterprise Linuxin (RHEL) tai AlmaLinuxin uusin versio

[Docker](https://www.ionos.com/fi-fi/digitalguide/palvelin/asetukset/docker-opas-asennus-ja-ensimmaeiset-askeleet/) on myös [asennettava](https://www.ionos.com/fi-fi/digitalguide/palvelin/asetukset/docker-opas-asennus-ja-ensimmaeiset-askeleet/) ja oltava käyttövalmis. Jotta voit hyötyä uusimmista tietoturva- ja suorituskykyparannuksista **,** tarvitset vähintään Docker **-version 20.10**. Jos haluat käyttää Docker Composea, varmista, että käytät vähintään versiota 2.x, sillä vanhempia versioita ei enää ylläpidetä aktiivisesti.

Perustiedot komentorivikäytöstä sekä [Docker Compose-](https://www.ionos.com/fi-fi/digitalguide/palvelin/asetukset/docker-compose-opas/) ja Docker [-ohjelmistojen hallinta](https://www.ionos.com/fi-fi/digitalguide/palvelin/asetukset/docker-compose-opas/) ovat hyödyllisiä. Jos suunnittelet laajempaa tai skaalautuvaa ratkaisua, kannattaa tutustua Kubernetesiin ammattitason konttien hallintaan.

## Kuinka käyttää WordPressiä Docker-kontteissa

Onnistunut WordPress-asennus koostuu kolmesta osasta:

- WordPress-ohjelmisto
- MySQL- tai MariaDB-tietokanta
- Lopulliset asennusvaiheet suoritetaan selaimessa

Seuraavissa esimerkeissä WordPress ja MySQL/MariaDB toimivat erillisissä, toisiinsa liitetyissä kontteissa. WordPress-ohjelmistoa ajava kontti liitetään isäntäkoneen porttiin, jotta voit käyttää sitä selaimella.

### MySQL/MariaDB-kontin käyttö

Kun Docker on käynnissä, ensimmäinen vaihe on tietokannan määrittäminen. Aloita käynnistämällä kontti nimeltä `my-db`. Voit käyttää joko MySQL:ää tai MariaDB:tä, joka on suora korvike MySQL:lle.

#### MySQL

Käynnistä kontti seuraavalla komennolla:

```none
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mysql:latest
```

#### MariaDB

Käynnistä kontti seuraavalla komennolla:

```none
sudo docker run --name my-db -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mariadb:latest
```

Huomio Varmista, että käytät tietokannassasi aina turvallista salasanaa. Salasanojen tallentaminen ympäristömuuttujina voi myös aiheuttaa mahdollisen tietoturvariskin. Sen sijaan on parasta käyttää **Docker-salaisuutta** tai suojattua asetustiedostoa.

### Tietokannan luominen

Kun olet luonut kontin, sinun on luotava tietokanta WordPress-asennuksellesi.

#### MySQL

Yhdistä juuri luotuun tietokantakonttiin seuraavalla komennolla:

```none
docker exec -it my-db mysql -u root -p
```

Luo tietokanta:

```none
CREATE Database wordpress-db;
```

#### MariaDB

Yhdistä juuri luotuun tietokantakonttiin seuraavalla komennolla:

```none
docker exec -it my-db mariadb -u root -p
```

Luo tietokanta:

```none
CREATE Database wordpress-db;
```

### WordPress-kontin käyttäminen

Seuraavaksi käynnistä kontti käyttämällä virallista WordPress-kuvaa. Se liitetään isäntäkoneen porttiin 8080 ja yhdistetään tietokantakonttiin.

Kaksi huomautusta:

- Jos käytössäsi on palomuuri, sinun on ehkä sallittava pääsy porttiin 8080.
- Jos portissa 8080 on jo käynnissä toinen palvelu, voit valita isäntäkoneelta toisen portin.

Komento vaihtelee hieman sen mukaan, käytätkö MySQL:ää vai MariaDB:tä:

#### MySQL

Käynnistä WordPress-kontti seuraavalla komennolla:

```none
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mysql -d wordpress:latest
```

#### MariaDB

Käynnistä WordPress-kontti seuraavalla komennolla:

```none
sudo docker run --name my-wordpress -p 8080:80 --link my-db:mariadb -d wordpress:latest
```

Tähän komentoon voi lisätä monia muita ympäristömuuttujia, jos haluat ohittaa oletusasetukset, kuten:

- **`-e WORDPRESS_DB_HOST=[hostname]`**: Oletusarvo on linkitetyn MySQL/MariaDB-kontin IP-osoite ja portti. Tämän muuttujan avulla voit muodostaa yhteyden toisella palvelimella olevaan MySQL/MariaDB-tietokantaan.
- **`-e WORDPRESS_DB_USER=[username]`**: Oletusarvo on `root`.
- **`-e WORDPRESS_DB_PASSWORD=[password]`**: Oletusarvo on linkitetyn MySQL/MariaDB-kontin `MYSQL_ROOT_PASSWORD` -ympäristömuuttuja.
- **`-e WORDPRESS_DB_NAME=[name]`**: Oletusarvo on `"wordpress"`.

Turvallisuuden parantamiseksi voi olla suositeltavaa olla käyttämättä kontteja oletusarvoisessa bridge-verkossa. Sen sijaan voit luoda mukautetun verkon:

```none
docker network create my-wp-network
docker run --name my-db --network my-wp-network -e MYSQL_ROOT_PASSWORD=SECURE_PASSWORD -d mysql:latest
docker run --name my-wordpress --network my-wp-network -p 8080:80 -d wordpress:latest
```

Tässä ympäristössä konttisi ovat paremmin eristettyjä muista, mikä vähentää ei-toivottujen yhteyksien riskiä. Voit myös määrittää verkkosäännöt tarkemmin, esimerkiksi käyttämällä mukautettuja palomuuriasetuksia tai ottamalla käyttöön käänteisen välityspalvelimen.

## Kuinka asennus saatetaan loppuun selaimessa

Asennuksen viimeisissä vaiheissa sinun on avattava WordPress-kontti selaimella.

Yllä olevassa esimerkissä olemme määrittäneet isäntäkoneen portin 8080 vastaamaan kontin porttia 80 (verkkopalvelut). Tämä tarkoittaa, että voit nyt käyttää konttia selaimella joko palvelimen IP-osoitteen tai verkkotunnuksen kautta:

- `http://<server-ip>:8080`
- `http://example.com:8080`

Avaa URL-osoite selaimessasi, valitse asennuskieli ja napsauta **Jatka**.

[![Kuva: Screenshot showing the WordPress language selection](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/1/e/csm_wp-docker-choose-language_151c6541cf.webp "Screenshot showing the WordPress language selection")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/wp-docker-choose-language.png) You can now select your installation language in the browser. Seuraavalla näytöllä näkyy viesti, joka valmistaa sinut asennuksen seuraavaan vaiheeseen. Jatka napsauttamalla **Let’s go!** -painiketta.

[![Kuva: Screenshot of the WordPress installation prompt](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/e/1/csm_wp-docker-note_8a0a5ea326.webp "Screenshot of the WordPress installation prompt")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/wp-docker-note.png) The WordPress installation prompt informs you about the next setup step. Syötä nyt tietokantatiedot, jotta tiedosto `wp-config.php` voidaan luoda:

[![Kuva: Screenshot of the WordPress database connection](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/c/3/csm_wp-docker-db-info_5f25200edc.webp "Screenshot of the WordPress database connection")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/wp-docker-db-info.png) Enter the requested information for your database. Huomaa, että oletuskäyttäjä on ”root”, ellei toisin mainita. Kirjoita luomasi tietokannan nimi ja valitsemasi salasana. Kun napsautat ”Lähetä”, ohjelma opastaa sinut asennuksen seuraaviin vaiheisiin.

[![Kuva: Screenshot of the WordPress installation: site info](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/9/2/csm_wp-docker-page-info_369afff846.webp "Screenshot of the WordPress installation: site info")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/wp-docker-page-info.png) Enter the requested information about your WordPress site. - **Sivuston otsikko:** Kirjoita verkkosivustosi otsikko.
- **Käyttäjätunnus:** Tämä on verkkosivustosi pääkäyttäjän käyttäjätunnus. Vinkki: Turvallisuussyistä suosittelemme, **ettet** käytä tunnusta ”Admin” tai verkkotunnustasi/URL-osoitettasi.
- **Salasana:** Muista kirjoittaa tämä muistiin ennen kuin jatkat.
- **Sähköpostiosoitteesi:** Tämä on järjestelmänvalvojan tiliin liitetty sähköpostiosoite.

Napsauta sitten **Asenna WordPress** -painiketta asennuksen loppuun saattamiseksi.

[![Kuva: Screenshot of the successful WordPress installation](https://www.ionos.com/fi-fi/digitalguide/fileadmin/_processed_/6/9/csm_wp-docker-success_ffbb3fccf5.webp "Screenshot of the successful WordPress installation")](https://www.ionos.com/fi-fi/digitalguide/fileadmin/DigitalGuide/Screenshots_2024/wp-docker-success.png) The success message shows the installation was successful. Kun asennus on valmis, näet vahvistusviestin ja voit kirjautua WordPressiin.

## Kuinka käyttää WordPressiä Docker Composen avulla

Docker Compose on toinen tapa käyttää WordPressiä. Asennus- ja käyttöohjeet löydät artikkelistamme, joka käsittelee Docker-orkestrointia Swarm- ja Compose-työkalujen avulla. Käytännössä tämän työkalun avulla voit määritellä kaikki tarvittavat palvelut yhteen tiedostoon ja käynnistää ne yhtä aikaa.

### YAML-tiedoston luominen

Luo ensin kansio projektillesi ja siirry siihen:

```none
sudo mkdir wordpress
cd wordpress
```

Luo YAML-tiedosto nimeltä `docker-compose.yml` seuraavalla komennolla:

```none
sudo nano docker-compose.yml
```

Tiedoston sisältö vaihtelee hieman sen mukaan, käytätkö MySQL:ää vai MariaDB:tä:

#### MySQL

Lisää tiedostoon seuraava sisältö:

```none
wordpress:
    image: wordpress:latest
    links:
        - wordpress_db:mysql
    ports:
        - 8080:80
wordpress_db:
    image: mysql
    environment:
        MYSQL_ROOT_PASSWORD: SECURE_PASSWORD
```

Tallenna tiedosto ja sulje se.

#### MariaDB

Lisää tiedostoon seuraava sisältö:

```none
wordpress:
    image: wordpress:latest
    links:
        - wordpress_db:mariadb
    ports:
        - 8080:80
wordpress_db:
    image: mariadb
    environment:
        MYSQL_ROOT_PASSWORD: SECURE_PASSWORD
```

Tallenna tiedosto ja sulje se.

### Konttien käynnistäminen

Käynnistä seuraavaksi kontit Docker Compose -ohjelmalla seuraavalla komennolla:

```none
sudo docker-compose up -d
```

Tarkista seuraavalla komennolla, onko kontit luotu:

```none
sudo docker-compose ps
```

Viimeistele asennus avaamalla WordPress-kontti selaimessa. Voit käyttää joko palvelimen IP-osoitetta tai sen URL-osoitetta:

- `http://192.168.0.1:8080`
- `http://example.com:8080`

## Kubernetes skaalautuviin WordPress-asennuksiin

Suuremmissa ja tuotantokäyttöön tarkoitetuissa ympäristöissä voidaan käyttää Kubernetesia (K8s). Kubernetesin avulla voit koordinoida ja hallita WordPress-kontteja automaattisesti useiden solmujen välillä. Kubernetes-klusterin käyttö tarjoaa useita etuja, kuten automaattisen skaalauksen, itsensä korjaavat mekanismit ja keskitetyn resurssienhallinnan. Yksi tapa toteuttaa tämä on **Helm**, Kubernetesin pakettienhallintaohjelma:

```none
helm repo add bitnami https://charts.bitnami.com/bitnami
helm install my-wordpress bitnami/wordpress --set service.type=LoadBalancer
```

Tämä mahdollistaa erittäin luotettavan ja skaalautuvan WordPress-asennuksen, joka sisältää [kuormituksen tasapainottamisen](https://www.ionos.com/fi-fi/digitalguide/palvelin/osaaminen/kuormituksen-tasapainottajat-palvelinten-tyoemaeaeraen-jakaminen/), automaattiset päivitykset ja vikasietoisuuden.


This is a markdown version of: [https://www.ionos.com/fi-fi/digitalguide/palvelin/osaaminen/wordpress-docker-kontteissa/](https://www.ionos.com/fi-fi/digitalguide/palvelin/osaaminen/wordpress-docker-kontteissa/) for AI/LLM consumption.