Wordpress/MySQL docker problemen met MySQL port

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • yannickudb
  • Registratie: Januari 2010
  • Laatst online: 16-09 07:45
Ik ben eens begonnen met experimenteren met docker containers en wordpress.

Nu loop ik tegen het volgende aan, ik heb al nginx proxy manager draaien, met een maria-db database op poort 3306. Wordpress wil graag MySql hebben, en installeert dat standaard ook op 3306. Gevolg dat werkt natuurlijk niet.
Nu heb ik al geprobeerd in de docker-compose.yml de poort naar 3307 te wijzigen, maar dat lijkt niet te werken. Ik heb al een tijdje rondgezocht op google, maar kan ook niet echt wat vinden maar ik weet ook niet zo heel goed waar te zoeken.

Hieronder mijn docker-compose. Kan iemand mij in de richting wijzen wat ik fout doe?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
version: "3" 
services:
  db:
    image: mysql:latest
    restart: always
    ports:
      - "3307:3307"
    environment:
      MYSQL_ROOT_PASSWORD: ***
      MYSQL_DATABASE: Wordpress
      MYSQL_USER: WordpressUser
      MYSQL_PASSWORD: ***

  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    restart: always
    ports:
      - "2080:80"
    environment:
      WORDPRESS_DB_HOST: db:3307
      WORDPRESS_DB_USER: MySqlDbUser
      WORDPRESS_DB_PASSWORD: ****
      WORDPRESS_DB_NAME: MySQLWordpress
    volumes:
      - "./:/var/www/html"

  phpmyadmin:
    image: phpmyadmin/phpmyadmin
    restart: always
    ports:
      - "28080:80"
    environment:
      PMA_HOST: db:3307
      PMA_USER: PhpMyadUser
      PMA_PASSWORD: ***

volumes:
  mysql: {}


Als ik docker ps kijk zie ik toch dat mysql toch nog op poort 3306 wat lijkt te proberen


code:
1
2
CONTAINER ID   IMAGE                             COMMAND                  CREATED          STATUS             PORTS                                                                                  NAMES
7b16a939d6fd   mysql:latest                      "docker-entrypoint.s…"   30 minutes ago   Up 30 minutes      3306/tcp, 33060/tcp, 0.0.0.0:3307->3307/tcp, :::3307->3307/tcp                         wordpress_db_1

Alle reacties


Acties:
  • 0 Henk 'm!

  • eLScha
  • Registratie: Juli 2005
  • Niet online
Je WordPress container heeft al MySQL. Die MariaDB kun je prima gebruiken.

Acties:
  • 0 Henk 'm!

  • peize9
  • Registratie: Juni 2012
  • Laatst online: 16-09 19:03
Dat klopt,

ports:
- "3307:3307"

Dit moet zijn:
ports:
- "3307:3306"

Het linker is de port naar buiten en de rechter is welke port uiteindelijk de bestemming is in de container.

Two possibilities exist: either we are alone in the Universe or we are not. Both are equally terrifying. ― Arthur C. Clarke


Acties:
  • 0 Henk 'm!

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

In principe kun je toch toe met mariadb ipv MySQL? Waarom wil je beide tegelijk draaien?

Mariadb is een fork van MySQL

i3 + moederbord + geheugen kopen?


Acties:
  • 0 Henk 'm!

  • yannickudb
  • Registratie: Januari 2010
  • Laatst online: 16-09 07:45
peize9 schreef op zaterdag 25 januari 2025 @ 09:25:
Dat klopt,

ports:
- "3307:3307"

Dit moet zijn:
ports:
- "3307:3306"

Het linker is de port naar buiten en de rechter is welke port uiteindelijk de bestemming is in de container.
Dat had ik ook geprobeerd, maar blijft helaas niet werken. Ik denk dat ik nog ergens iets over het hoofd zie.

Maar blijkbaar kan ik mariadb ook voor wordpress gebruiken, ga dat straks eens proberen.

Heb nog wat te leren ;)

Acties:
  • 0 Henk 'm!

  • peize9
  • Registratie: Juni 2012
  • Laatst online: 16-09 19:03
Dat man inderdaax, zelf kies ik meestal voor verschillende db containers om alles lekker seperaat te houden.

Wat werkt niet?

Two possibilities exist: either we are alone in the Universe or we are not. Both are equally terrifying. ― Arthur C. Clarke


Acties:
  • 0 Henk 'm!

  • Boudewijn
  • Registratie: Februari 2004
  • Niet online

Boudewijn

omdat het kan

yannickudb schreef op zaterdag 25 januari 2025 @ 15:44:
[...]


Dat had ik ook geprobeerd, maar blijft helaas niet werken. Ik denk dat ik nog ergens iets over het hoofd zie.

Maar blijkbaar kan ik mariadb ook voor wordpress gebruiken, ga dat straks eens proberen.

Heb nog wat te leren ;)
MariaDB is a community-developed, commercially supported fork of the MySQL relational database management system (RDBMS), intended to remain free and open-source software under the GNU General Public License. Development is led by some of the original developers of MySQL, who forked it due to concerns over its acquisition by Oracle Corporation in 2009,[5] but in 2024 MariaDB was itself bought by the K1 private equity group, which appointed a new CEO.[6]
(Bron: wikipedia)
Het is echt gemaakt om MySQL te vervangen dus :)

i3 + moederbord + geheugen kopen?


Acties:
  • 0 Henk 'm!

  • yannickudb
  • Registratie: Januari 2010
  • Laatst online: 16-09 07:45
peize9 schreef op zaterdag 25 januari 2025 @ 17:10:
Dat man inderdaax, zelf kies ik meestal voor verschillende db containers om alles lekker seperaat te houden.

Wat werkt niet?
Gevoelsmatig zeg ik ook, graag de db containers apart houden. Dus nginx eigen db container, wordpress eigen db container etc.

Dat was ook de bedoeling met de DB container van wordpress op poort 3307 te zetten. Alleen op een of andere manier werkte dat niet. Of in ieder geval niet zoals verwacht. Ik ga gewoon nog wat proberen.

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Laatst online: 21:43

Hero of Time

Moderator LNX

There is only one Legend

Heb je in de mysql config ook de poort aangepast ervoor, zodat je eenvoudiger 3307 kan forwarden zonder hoeven na te denken wat er waar wordt gebruikt? Bevestig ook intern in de container dat de instance draait.

Commandline FTW | Tweakt met mate


Acties:
  • +2 Henk 'm!

  • hellfighter87
  • Registratie: Mei 2008
  • Laatst online: 16-09 15:50
Als ik het zo goed zie moet het niet db:3307 maar db:3306 zijn.

Die forwards 3307:3307 zijn niet nodig om de docker containers met elkaar te verbinden.
Docker containers hebben namelijk hun eigen network.

De enige reden dat je die port forwars wil doen is om er ook zelf van buitenaf bij te kunnen. Wat goed is bij phpmyadmin en wordpress want daaf wil je bij kunnen.

Verder zou ik restart: always aanpassen naar restart: unless-stopped. Als je ze dan zelf stopt blijven ze ook uit.

[ Voor 23% gewijzigd door hellfighter87 op 25-01-2025 19:17 ]


Acties:
  • 0 Henk 'm!

  • eLScha
  • Registratie: Juli 2005
  • Niet online
yannickudb schreef op zaterdag 25 januari 2025 @ 18:16:
[...]


Gevoelsmatig zeg ik ook, graag de db containers apart houden. Dus nginx eigen db container, wordpress eigen db container etc.

Dat was ook de bedoeling met de DB container van wordpress op poort 3307 te zetten. Alleen op een of andere manier werkte dat niet. Of in ieder geval niet zoals verwacht. Ik ga gewoon nog wat proberen.
Dan zou ik niet de standaard WordPress container pakken. Die heeft juist alles gebundeld voor je.
Pagina: 1