recherche

Maison  >  Questions et réponses  >  le corps du texte

使用Docker部署java web应用

假设我们我需要的组件有:nginx tomcat webapp redis

我们的操作系统是debain

nginx是一个容器
tomcat webapp是一个容器
redis一个容器
....
然后把这些容器整合,完成部署

疑惑的是端口之间如何访问?数据库文件在哪?各容器之间文件是否可以共享?

没有使用过Docker 不知道思想是否正确,求各位大侠解惑

阿神阿神2760 Il y a quelques jours567

répondre à tous(4)je répondrai

  • ringa_lee

    ringa_lee2017-04-24 09:14:08

    1. Vous pouvez utiliser Docker comme machine virtuelle, donc au moins il n'y aura aucun coût d'apprentissage pour son utilisation. Il ne s'agit rien de plus que d'écrire certaines étapes de fonctionnement de la machine virtuelle dans un Dockerfile afin que Docker puisse la configurer automatiquement, la rendant de plus en plus claire. Cependant, certaines opérations et étapes de configuration peuvent être difficiles à mettre en œuvre dans le cadre d'une installation normale. Vous devez apprendre des méthodes d'écriture d'autres personnes sur Docker Hub.
    De cette façon, l'accès et le partage de fichiers entre les ports ne posent pas de problème ; le fichier de base de données peut être placé dans le conteneur ou monté du système de fichiers local vers le conteneur via VOLUME.
    2. Utilisez Docker pour créer des microservices, ce qui signifie le diviser en différents conteneurs pour former les services internes d'un grand service. Dans ce cas, l'accès entre les ports peut être spécifié en spécifiant le paramètre --link lors de l'exécution pour spécifier un conteneur ; le fichier de base de données peut être monté depuis un répertoire local vers le conteneur en spécifiant -v (--volume) ; Le partage entre conteneurs peut être effectué en spécifiant un dossier comme VOLUME. En substance, il s'agit simplement de monter les répertoires du système de fichiers local sur plusieurs conteneurs.
    3. Si vous souhaitez vraiment utiliser des microservices, vous devez comprendre la technologie docker-compose pour vous aider à gérer divers composants. Il vous suffit d'écrire la configuration d'exécution du conteneur dans le fichier yml.

    répondre
    0
  • 迷茫

    迷茫2017-04-24 09:14:08

    Le mien est mysql tomcat fastdfs
    mysql utilise -p pour mapper le port 3306
    tomcat 8080 fastdfs a été changé en 8081
    L'adresse IP de l'hôte est 10.0.15.4
    Donc la configuration dans tomcat le projet est de se connecter à 10.0 .15.4 / 3306 / 8081
    suffit, puis iptables ouvre le segment du réseau de conteneurs Dokcer pour accéder à l'hôte

    Si vous avez nginx, transférez-le simplement directement au 8080 de Tomcat dans nginx

    répondre
    0
  • 阿神

    阿神2017-04-24 09:14:08

    docker-compose, orchestration du service docker.

    répondre
    0
  • 怪我咯

    怪我咯2017-04-24 09:14:08

    Si tous les composants que vous utilisez servent une application, il est recommandé d'utiliser les outils d'orchestration Docker, tels que Compose fourni officiellement.
    Les fichiers et les données entre les conteneurs peuvent être partagés, ce qui peut être réalisé en montant des volumes de données.
    Le moyen le plus pratique de se connecter entre les conteneurs est de se connecter via le paramètre link, qui établira un canal dédié entre les deux conteneurs ; et éviter Élimine les risques de sécurité causés par l'ouverture des ports de données vers le monde extérieur.
    Si vous souhaitez le faire, il est recommandé de vous familiariser d'abord avec les choses les plus élémentaires. C'est assez intéressant.

    répondre
    0
  • Annulerrépondre