Rumah  >  Soal Jawab  >  teks badan

如何在docker下搭建一个JAVA Tomcat运行环境,有试过的么?

最新在学习Docker,想搭建一个java tomcat环境,有知道的么?越详细越好,先谢了。

PHPzPHPz2711 hari yang lalu722

membalas semua(1)saya akan balas

  • 大家讲道理

    大家讲道理2017-04-21 10:58:11

    Saya rasa blog ini menerangkan masalah anda dengan sangat jelas, anda boleh membacanya dengan teliti,
    http://www.blogjava.net/yongboy/archive/2013/12/12/407498.html

    Docker direka untuk menyediakan penyelesaian penggunaan automatik untuk aplikasi. Ia boleh membuat bekas (mesin maya ringan) dengan cepat pada sistem Linux dan menggunakan serta menjalankan aplikasi dengan mudah melalui fail konfigurasi adalah sangat mudah. Oleh kerana penggunaan bekas, persekitaran pengeluaran dan persekitaran pembangunan boleh dipisahkan dengan mudah tanpa menjejaskan satu sama lain. Ini adalah kaedah buruh pelabuhan yang paling biasa. Lebih banyak cara untuk bermain termasuk aplikasi web berskala besar, penggunaan pangkalan data, penggunaan berterusan, kelompok, persekitaran ujian, pengkomputeran awan berorientasikan perkhidmatan, VDI desktop maya, dsb.

    Tanggapan subjektif: Docker ditulis dalam bahasa Go, menggunakan cgroup untuk mencapai pengasingan sumber, dan teknologi kontena menggunakan LXC Ia menyediakan penyelesaian virtualisasi ringan yang boleh menjalankan proses Unix secara bebas. Ia menyediakan cara untuk mengautomasikan penggunaan perisian dalam persekitaran yang selamat dan boleh berulang. Arahan LXC agak rumit Jika anda berminat, berikut adalah artikel yang saya tulis sebelum ini berdasarkan LXC (membina versi mudah platform awan JAVA PAAS anda boleh menyemaknya terlebih dahulu.

    Prinsip pelaksanaan, teori yang berkaitan, senario aplikasi, dsb. akan ditulis kemudian dalam siri ini. Berikut adalah gambaran ringkasnya, secara manual sepenuhnya, membina persekitaran berjalan Tomcat berdasarkan Docker. Mula-mula keluar Demo yang baik, kita boleh lihat kesannya, yang boleh membantu kita pergi lebih jauh.

    Persekitaran

    Dalam semua persekitaran artikel ini, ubuntu-13.10-server-amd64 dijalankan pada VMware WorkStation Ambil perhatian bahawa ia adalah sistem 64-bit, secara teorinya, mesin maya lain juga boleh dilaksanakan sepenuhnya.

    Pasang Docker

    Docker versi 0.7 memerlukan sokongan Linux kernel 3.8 dan sistem fail AUFS.

    Semak sama ada AUFS dipasang

    sudo apt-get kemas kini
    sudo apt-get install linux-image-extra-uname -r

    Tambah kunci repositori Docker

    sudo sh -c "wget ​​​​-qO- https://get.docker.io/gpg | apt-key add -"

    Tambah repositori Docker dan pasang Docker

    sudo sh -c "echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"
    sudo apt-get kemas kini
    sudo apt-get install lxc-docker

    Semak sama ada Docker telah berjaya dipasang

    versi sudo docker

    Versi pelanggan keluaran terminal: 0.7.1

    Versi Go (pelanggan): go1.2
    Komit Git (pelanggan): 88df052
    Versi pelayan: 0.7.1
    Git commit (pelayan): 88df052
    Versi Go (pelayan): go1.2
    Versi stabil terakhir: 0.7.1
    Alih keluar sudo

    Di bawah Ubuntu, apabila melaksanakan Docker, anda perlu memasukkan sudo dan kata laluan setiap kali, yang sangat meletihkan di sini dan tambahkan kebenaran pelaksanaan pengguna semasa kepada kumpulan pengguna docker yang sepadan.

    Tambah kumpulan pengguna docker baharu

    sudo groupadd docker

    Tambah pengguna semasa ke kumpulan pengguna docker Ambil perhatian bahawa yongboy di sini ialah nama pengguna log masuk pelayan ubuntu

    sudo gpasswd -pelabuh yongboy

    Mulakan semula proses pemantauan latar belakang Docker

    sudo service docker restart

    Selepas dimulakan semula, cuba untuk melihat sama ada ia berfungsi

    versi buruh pelabuhan

    Jika ia belum berkuat kuasa lagi, mulakan semula sistem dan ia akan berkuat kuasa

    sudo but semula
    Pasang mesin maya instance-ubuntu Docker yang menjalankan

    Selepas Docker dipasang, proses latar belakang dimulakan secara automatik dan contoh mesin maya boleh dipasang (di sini, ambil imej belajar/tutorial yang digunakan dalam demonstrasi rasmi sebagai contoh):

    belajar tarik pekerja pelabuhan/tutorial
    Selepas pemasangan selesai, lihat kesannya

    larian buruh pelabuhan belajar/tutorial /bin/echo hello world
    Masukkan secara interaktif mesin maya yang baru dipasang

    docker run -i -t learn/tutorial /bin/bash
    Anda akan melihat:

    root@51774a81beb3:/#
    Menunjukkan bahawa persekitaran interaktif telah dimasukkan.

    Pasang pelayan terminal SSH untuk memudahkan penggunaan luar klien SSH kami untuk log masuk dan akses

    kemas kini apt-get
    apt-get install openssh-server
    sshd yang mana
    /usr/sbin/sshd
    mkdir /var/run/sshd
    passwd #Masukkan kata laluan pengguna Saya menetapkannya kepada 123456 di sini untuk memudahkan log masuk klien SSH
    keluar #Keluar
    Dapatkan ID bekas contoh yang baru anda kendalikan

    docker ps -l

    PERINTAH IMEJ ID BEKAS DIBUAT NAMA PORT STATUS
    51774a81beb3 learn/tutorial:latest /bin/bash 3 minit yang lalu Keluar 0 thirsty_pasteur
    Anda boleh melihat bahawa ID bekas operasi semasa ialah: 51774a81beb3. Ambil perhatian bahawa setelah semua operasi dilakukan, mereka perlu diserahkan dan disimpan untuk log masuk SSH yang mudah:

    docker commit 51774a81beb3 belajar/tutorial
    Jalankan contoh imej ini sebagai proses latar belakang untuk masa yang lama:

    larian buruh pelabuhan -d -p 22 -p 80:8080 belajar/tutorial /usr/sbin/sshd -D
    Pelayan SSH yang berjalan dalam bekas ubuntu menduduki port 22, dan -p 22 ditentukan. -p 80:8080 bermakna ubuntu kami akan menjalankan tomcat pada port 8080, tetapi port yang dipetakan secara luaran (di luar bekas) ialah 80.

    Pada masa ini, semak sama ada ia berjalan dengan jayanya.

    dok ps

    PERINTAH IMEJ ID BEKAS DIBUAT NAMA PORT STATUS
    871769a4f5ea learn/tutorial:latest /usr/sbin/sshd -D Kira-kira seminit yang lalu Naik Kira-kira seminit 0.0.0.0:49154->22/tcp, 0.0.0.0:80->8080/tcp focused_poincare
    Ambil perhatian bahawa nombor port sambungan SSH yang diberikan secara rawak ialah 49154:

    ssh root@127.0.0.1 -p 49154
    Selepas memasukkan kata laluan, bolehkah saya memasukkan? Sebaik sahaja anda mengawal SSH, selebihnya adalah sangat mudah, pasang JDK, pasang tomcat, dll., terpulang kepada anda. Berikut ialah skrip pemasangan:

    Pasang oracle jdk 7 pada ubuntu 12.04

    apt-get install python-software-properties
    add-apt-repository ppa:webupd8team/java
    kemas kini apt-get
    apt-get install -y wget
    apt-get install oracle-java7-installer
    java -version

    Muat turun tomcat 7.0.47

    wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.47/bin/apache-tomcat-7.0.47.tar.gz

    Ekstrak dan jalankan

    tar xvf apache-tomcat-7.0.47.tar.gz
    cd apache-tomcat-7.0.47
    bin/startup.sh
    Secara lalai, tomcat akan menduduki port 8080. Apabila memulakan contoh cermin, -p 80:8080 telah ditentukan Contoh/bekas cermin ubuntu membuka port 8080, yang dipetakan ke port hos 80. Jika anda tahu alamat IP hos, anda boleh mengaksesnya dengan bebas. Pada mesin hos, hanya mengujinya melalui curl:

    gulung http://192.168.190.131
    Sudah tentu, anda juga boleh menggunakan pelayar untuk mengaksesnya.

    Dalam situasi sebenar, tomcat mungkin tidak dibenarkan membuka port 80 secara terus ke dunia luar Ia biasanya terletak di belakang nginx/apache atau firewall sahaja.

    Ringkasan

    Membina persekitaran masa jalan Tomcat dengan bantuan Docker adalah sangat mudah secara umum dan membolehkan kami melihat kehadiran PAAS. Ya, menggunakan Docker sebagai perkhidmatan asas PAAS tidak rumit dengan sendirinya. Sekarang ada masa untuk bercakap tentang cara menggunakan fail skrip untuk membina contoh imej, dan pada masa yang sama bercakap tentang prinsip dan mekanisme pelaksanaan Docker.

    balas
    0
  • Batalbalas