見出し画像

Apache JAMES (Java Mail Enterprise Server) メール送信

以前、「Apache JAMES」のサイトの翻訳をホスティングしていたこともあるんだけど、実際はと言うと、私の環境があまりに悪かったのと、教えてくれる人が誰もいなくて途中で挫折すること結構多くて、結局、JAMESのことをロクに覚えないまま、「引退」モードだったんだけれど。

なんか、最近けっこう「DOCKER」使って、Windows上でかなり快適な環境を構築できるようで、DockerバージョンのJAMESのテストしてみました。結果としては(まあ、当たり前って事なんでしょうが)動いたんですが、多分、Dockerを知らないと言う人にとっては結構躓くポイント多いのかなと。


とは言え、技術的な何かを書くこともないです。取り合えず、

JPA-3.6.0

のタグので行けます(因みに、Apache DBサーバのプロジェクトの一つであるDerby使っているようで。なんか懐かしい名前だなぁ、と。OJBとか色々とあったなあ・・)。


$ docker pull apache/james:jpa-3.6.0

したあと、

一度Dockerイメージpullしたうえで(jamessvrって言うコンテナ名前と仮定)RUNしてから、

$ docker container cp jamessvr:/root/conf .

みたいな、ローカルへの「コピー」をして、コンテナ廃棄して、
ローカルにコピーされたうちの
$PWD\conf\dnsservice.xml
に、
<servers>
  <server>1.1.1.1</server>
  <server>8.8.8.8</server>
</servers>
を <dnsservice></dnsservice>内に記述して、
新たに
ローカルのconf と /root/conf (コンテナ内)を紐づけて、コンテナ立ち上げればいいと思いますね。

----

$ docker container cp ....

みたいなコマンドを教えてくれる人がいなかったから、こういう「肝」となるテクニックを身につけるのに、一週間とかかかってしまったわ・・・orz

---

ともあれ、
Docker Desktop のRUNしているコンテナjamessvrに対し、MSDOSなどのコマンドプロンプトから、

$ docker exec jamessvr java -jar /root/james-cli.jar -h 127.0.0.1 -p 9999 adddomain DESIREDDOMAIN
$ docker exec jamessvr java -jar /root/james-cli.jar -h 127.0.0.1 -p 9999 adduser USERNAME@DESIREDDOMAIN DESIREDPASSWD

みたいなことはしておく必要あります。じゃないと、ユーザが存在しないので^^;

一応、ローカルでBecky!で確認してなんとかなっていたから、成功したって事で。


----

追記:
conf フォルダにある、conf\pop3server.xml の、
<pop3server enabled="false">
は、
<pop3server enabled="true">
に書き換えた方が良いかもですね。まあこれ知らずに、POP3動かねえってことで、ずっと「詰みモード」だったりって可能性あるから。

よろしければサポートお願いします! いただいたサポートはクリエイターとしての活動費に使わせていただきます!