質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

解決済

docker + php でgmailが送受信できない

Henjin213
Henjin213

総合スコア0

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

1回答

0評価

0クリップ

1332閲覧

投稿2020/08/24 02:44

初心者ですがお願いします、
dockerで、PHP+nginx+Mysqlの環境で、emailの送信がしたいのですが、うまくいきません。
↓のサイトを参考に、mailhogを追加し、mhsendmailというものも追加しました。

docker-compose.yml

version: "3.7" services: mailhog: image: mailhog/mailhog ports: - "8025:8025" - "1025:1025" php: build: ./docker/php volumes: - ./server:/var/www depends_on: - db nginx: image: nginx ports: - 80:80 - 8000:8000 volumes: - ./server:/var/www - ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf depends_on: - php db: # Dockerfileの相対Path build: ./docker/mysql/ # 環境変数としてパスワードを設定 environment: MYSQL_ROOT_PASSWORD: password # データの保存場所を設定 volumes: - mysql-data:/var/lib/mysql ports: - 3306:3306 volumes: mysql-data:

Dockerfile

# BaseImage FROM php:7.3-fpm COPY php.ini /usr/local/etc/php/ # package update & install # Dockerは文を実行するたびにイメージのレイヤーを作成されてしまうので ; でワンライナーにする \ で次行に続く RUN apt-get update \ && apt-get install -y zlib1g-dev libzip-dev default-mysql-client \ && docker-php-ext-install zip pdo_mysql # 日本語環境 RUN apt-get update -qq ;\ apt-get install -y locales ;\ locale-gen ja_JP.UTF-8 ENV LANG ja_JP.UTF-8 ENV LC_CTYPE ja_JP.UTF-8 RUN localedef -f UTF-8 -i ja_JP ja_JP.utf8 ENV LC_ALL ja_JP.UTF-8 # Composer install RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer # mhsendmail RUN curl -sSLO https://github.com/mailhog/mhsendmail/releases/download/v0.2.0/mhsendmail_linux_amd64 \ && chmod +x mhsendmail_linux_amd64 \ && mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmail \ && echo 'sendmail_path = "/usr/local/bin/mhsendmail --smtp-addr=mailhog:1025"' > /usr/local/etc/php/conf.d/sendmail.ini ENV COMPOSER_ALLOW_SUPERUSER 1 ENV COMPOSER_HOME /composer ENV PATH $PATH:/composer/vendor/bin WORKDIR /var/www RUN composer global require "laravel/installer" # ターミナル画面を見やすく変更 RUN echo 'export PS1="\n\[\033[35m\]\u@\h\[\033[00m\]:\[\033[36m\]\w\[\033[00m\]\n[app] \$ "' >> /root/.bashrc

test.php

php

<?php if (mail('receive@gmail.com', 'テストだよ', '届いてるかな?', 'From: send@gmail.com')) { echo 'sent'; }else { echo 'not sent'; } ?>

実行するとsentが表示され、localhost:8025を確認しても、
イメージ説明
と表示されるのですが、gmailの方で受信できていません。

googleアカウントの設定で、「安全性の低いアプリのアクセスを許可」がオンになっているのは確認しました。
送信側をみても送信済みボックスにありませんでした。

macOS Catalina 10.15.6で確認しています。

他に必要な情報などありましたらご指摘をお願いします。
よろしくお願いします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです