ホームページ  >  に質問  >  本文

网站部署 - 关于使用docker搭建SpringMVC项目的疑问。

大家好,有人使用docker部署过java的web项目没有。

小弟有一些疑问,我现在所知道的:我能使用DaoCloud或者是时速云来搭建一个运行有tomcat的主机,也可以搭建一个运行有mysql的主机,但是我不清楚的是,我该如何才能在同一个主机中部署上mysql和tomcat(是需要我自己来编写dockerfile吗?),并设置mysql的密码,我想跑的是一个java的网站项目。

提前谢过啦。

巴扎黑巴扎黑2709日前813

全員に返信(2)返信します

  • 黄舟

    黄舟2017-04-22 09:00:48

    個人的な意見、参考のみ:
    まず、MySQL を完了します:
    1. mysql イメージをプルします
    2. コンテナーを作成します: docker run --name=mysqlserver -p 3306:3306 -e MYSQL_ROOT_PASSWORD =あなたのパスワードmysql docker run --name=mysqlserver -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=yourpassword mysql

    • MYSQL_ROOT_PASSWORD=yourpassword:用来初始化mysqlserver的密码

    这里没有考虑volume,为了安全,数据的存储建议不放在container中,或者不要放在mysqlserver容器中,你可以使用-v共享本地存储或者其他专门用来存储数据的container;
    3.使用root用户和密码去登陆,ip是啥你自己想;

    然后,tomcat这块我的做法是:
    1.在一个ubuntu14.04里安装tomcat,然后把这个ubuntu的container暴露ssh端口,方便使用(也有童鞋觉得不妥,这个你自己考虑和学习);
    2.配置tomcat相关,部署web应用:docker run -it -v /root/mnt_host:/root/mnt_container --name=myapp --link=mysqlserver:db -p 80:80 -p 4000:22 ubuntu:hardy /bin/bash

    • --link=mysqlserver:db:这个让tomcat可以通过db代替ip访问到mysql;
    • -p 80:80
      • MYSQL_ROOT_PASSWORD=yourpassword: mysqlserver の初期化に使用するパスワード

      ここではボリュームは考慮されていません。データをコンテナに保存しないこと、またはデータの保存に特に使用される他のコンテナを共有するために -v を使用することをお勧めします。 root を使用する ユーザーとパスワードを使用してログインします。必要な IP を決定できます

      🎜そして、私の tomcat へのアプローチは次のとおりです: 1. tomcat を ubuntu14.04 にインストールし、簡単に使用できるように ubuntu コンテナを ssh ポートに公開します (これは不適切だと考える子供もいます。これは自分で検討して学習する必要があります)。 🎜2. Tomcat 関連の設定と Web アプリケーションのデプロイ: docker run -it -v /root/mnt_host:/root/mnt_container --name=myapp --link=mysqlserver:db -p 80:80 -p 4000: 22 ubuntu:hardy /bin/bash🎜
      • --link=mysqlserver:db: これにより、Tomcat は 🎜🎜 の代わりに db を介して mysql にアクセスできるようになります。
        • -p 80:80: myapp 🎜🎜 の 80 を公開します。 🎜 Tomcat を起動し、すべてが正常に完了すると、ホスト IP を介して Tomcat にアクセスできるようになります。 🎜

          返事
          0
  • 天蓬老师

    天蓬老师2017-04-22 09:00:48

    Dockfile を作成して、システムをダウンロードして、Tomcat、mysql、その他の必要なアプリケーションを自分でインストールすることもできます。

    返事
    0
  • キャンセル返事