Docker compose - избавиться от порта с URL - PullRequest
0 голосов
/ 20 апреля 2019

Я использую следующий docker docker-compose.yaml:

version: '3.3'

services:
  # Database
  db:
    image: mysql:latest
    command: --default_authentication_plugin=mysql_native_password
    ports:
      - '3306:3306'
    volumes:
      - db_data:/var/lib/mysql
    restart: on-failure
    environment:
      MYSQL_ROOT_PASSWORD: password
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: password
    networks:
      - wpsite
  # phpmyadmin
  phpmyadmin:
    depends_on:
      - db
    image: phpmyadmin/phpmyadmin
    restart: on-failure
    ports:
      - '8080:80'
    environment:
      PMA_HOST: db
      MYSQL_ROOT_PASSWORD: password
    networks:
      - wpsite
  # Wordpress
  wordpress:
    depends_on:
      - db
    image: wordpress:latest
    ports:
      - '8081:80'
    restart: on-failure
    volumes: ['./:/var/www/html']
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: password
    networks:
      - wpsite
networks:
  wpsite:
volumes:
  db_data:

Я нахожусь на Ubuntu, и когда я его запускаю, все работает нормально. Затем я могу получить доступ к своему сайту WordPress с адреса localhost: 8081.

Это моя проблема, потому что для моей работы мне нужен URL-адрес без порта. В лучшем случае использовать какое-нибудь имя хоста.

Есть ли способ работы с докером для достижения этого?

Я уже безуспешно пытался сделать это следующим образом:

  1. Я добавил строку в файл / etc / hosts 127.0.0.1 mysite.com
  2. Я остановил apache2, чтобы освободить порт 80 sudo service apache2 stop
  3. Затем я настроил свой файл docker-compose.yaml для показа wordpress через порт 80 и запуска.
  4. обратная проверка: sudo netstat -tulpn | grep :80 и да! Образ Wordpress работает на порту 80.

Затем, когда я пытаюсь зайти на localhost или mysite.com, меня сразу же перенаправляют на localhost: 8000, и браузер показывает мне, что страница не найдена. Что за черт?

Я расстроен, потому что мне действительно нужен адрес без порта. Буду рад любым советам о том, как этого добиться.

1 Ответ

1 голос
/ 20 апреля 2019

Поведение, которое вы описываете, может быть связано с тем, что браузер уже кэшировал это перенаправление в предыдущем сеансе. Попробуйте использовать другой браузер, убедившись, что он не выполняет никаких перенаправлений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...