Окончательный эффект заключается в следующем
Есть примерно несколько шагов
1. Установите Docker CE 2. Запустите Redis Image 3. Java Environment Preparation 4. Подготовка проекта 5. Напишите Dockerfile 6. Выпуск Проект 7. Сервис тестирования
Подготовка окружающей среды
1. Установите Docker CE
Не рекомендуйте использовать его в Китае: «Сценарии для установки», он будет загружен и установлен очень медленно. Используйте шаг 1 для его установки, см. Следующую ссылку: общий метод установки
1. Регулярное метод установки
Ubuntu 17.04 x64 Установить Docker CE
http://www.ymq.io/2018/01/11/docker-install-docker-ce
2. Установите сценарий
Сценарии не рекомендуются для домашней установки:
Установите Docker CE
$ curl -fssl get.docker.com -o get -docker.sh $ sudo sh get -docker.sh
<Вывод усеченные> Если вы хотите использовать Docker в качестве пользователя, не являющегося корректом, вам теперь следует рассмотреть ваш пользователь в группе «докер» с чем-то вроде: sudo usermod -ag docker your-usermember, что вам придется выходить и обратно, чтобы это вступило в силу! Предупреждение: добавление пользователя в группу «докеров» предоставит способность запускать условия, которые можно использовать для получения корневых. См.
Проверьте Docker CE
Убедитесь, что Docker CE установлен правильно, запустив изображение Hello-World
$ sudo docker run hello-worldroot@souyunku: ~# sudo docker imagesRepository тег Идентификатор изображения создал sizehello-world
2. Запустите изображение Redis
1. Запустите зеркало
$ Docker Run -name Redis -6379 -P 6379: 6379 -d Redisunable, чтобы найти изображение 'Redis: Последний' LocallyLatest: тяга из библиотеки/redisc4bb02b17bb4: тянуть комплекс 58638acf67c5: utlect f98d108c38b: pult ulep 83be14f07: Pult Fult F98d108c38b: Pult Complete 83be14 5D5F41793421: PULL COULTE ED89FF0D9EB2: PULL COMPLET DIGEST: SHA256: 0E773022CD6572A5153E5013AFCED0F7191652D3CDF9B1C6785EB13F6B2974B1STATUS: Загрузка New REDIS: Последний 2F1F20F672E386A61644E1C08232EA34BDFD6A0C244B55FA833FCFD6DD207288
2. Проверьте зеркало
Посмотреть зеркало
root@souyunku: ~# docker images rediSrepository Tag Id Image создал Sizeredis последнее 1e70071f4af4 4 недели назад 107 МБ
Посмотреть процесс зеркала
root@souyunku: ~# docker pscontainer id command Command Command Catude Status Ports names2f1f20f672e3 Redis "Docker-EntryPoint.S ..." 14 секунд назад на 14 секунд 0,0.0.0:6379->6379/TCP Redis-6379
Просмотреть процесс контейнера
root@souyunku: ~## Docker Container Pscontainer Id Command Command Comenuction Cature Ports names2f1f20f672e3 redis "docker-enterpoint.s ..." 7 минут назад 7 минут 0,0.0: 6379-> 6379/TCP Redis-6379
3. Test Redis Service
Подключитесь к Service Redis через Redis-CLI для тестирования данных хранилища
root@souyunku: ~# docker run -it -link redis -6379: redis - -rm redis -cli -h -redis -p 6379redis: 6379> set count 1okredis: 6379> Получите счет "1" Redis: 6379> exitroot@souyunku:###
3. Подготовка среды Java
Примечание: прочитайте следующие шаги! ! !
1. Среда Java состоит в том, чтобы собрать проект образца Github Maven Springboot и подготовить
2. или вы можете компилировать и загружать локально самостоятельно. Затем установите следующую среду Java: JDK, Maven, Git и вы можете обойтись без конфигурации.
1. Установите JDK
Скачать метод JDK: 1
Скачать JDK1.8 в среде Linux, перейдите на (Официальный веб -сайт), чтобы загрузить файл установки JDK
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-vloadsloads-2133151.html
Скачать метод JDK: 2
Моя ссылка на облачном диске Baidu: http://pan.baidu.com/s/1jifzf9s пароль: u4n4
Скачать JDK Метод: 3
Используйте Wget для скачивания,
$ wget-no-cookies-no-check-certificate-header "cookie: gpw_e24 = http%3a%2f%2fwww.oracle.com%2f; oraclelicense = accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz
Примечание, если использование: Скачать метод JDK: 3
Затем, в следующих шагах, JDK1.8.0_144 заменяется JDK1.8.0_141
Начните установку
Загрузить в каталог /opt
Декомпрессия
$ cd /opt $ tar zxvf jdk-8u144-linux-x64.tar.gz $ mv jdk1.8.0_144 / /lib /jvm
Настройте переменные среды
$ vi/etc/profile#jdkeexport java_home =/lib/jvmexport jre_home = $ {java_home}/jre export classpath =.: $ {java_home}/lib: $ {jre_home}/lib export path = $ {java_home}/bin: $Сделайте переменные среды эффективными
$ source /etc /profile
проверять
root@souyunku: ~# java -versionjava версия "1.8.0_141" Среда Java (TM) SE (Build 1.8.0_141-B15) Hotsopot Java (TM) 64-битный сервер VM (Build 25.141-B15, смешанный режим)
2. Установите Maven
$ apt-get установить Maven
Проверьте Maven
root@souyunku: ~# mvn -vapache maven 3.3.9maven home:/usr/share/mavenjava Версия: 1.8.0_141, поставщик: Oracle CorporationJava Home:/lib/jvm/jredefault locale: en_us, платформа Encoding: utf-8 name: "Linux", версия: "4.10-eric. "AMD64", семья: "Unix"
3. Установите git
$ apt-get установить git
Проверьте Maven
root@souyunku: ~# git -версия 2.11.0
4. Подготовка проекта
1. Скомпилируйте проект
1. Скомпилируйте проект на сервере Maven самостоятельно
Используйте git, чтобы клонировать проект
$ git clone https://github.com/souyunku/other-projects.git
Используйте Maven, чтобы скомпилировать проект
$ CD другие проекты/Docker-Spring-Boot-Demo/
2. Измените проект
Измените адрес сервера Redis Spring.redis.host = 45.32.44.217, чтобы быть локальным IP. При запуске изображения Redis Redis был превращен во внешнюю сетевую службу 0.0.0.0:6379->6379/TCP
$ vi src/main/resources/application.properties# redis server Адрес Spring.redis.host = 45.32.44.217 $ mvn пакет
Скопируйте проект Docker-spring-boot-demo-0.0.1-snapshot.jar в целевом / каталоге в каталог / OPT и будет использоваться позже
$ cp target/docker-spring-boot-demo-0.0.1-snapshot.jar/opt/
2. Скомпилируйте проект в локальном Maven и загрузите его в каталог /OPT и будет использоваться позже
Изменить адрес сервера Redis Server.properties
Другие проекты/Docker-Spring-boot-demo/src/main/resources/application.properties# redis server Адрес Spring.redis.host = 45.32.44.217
5. Напишите Dockerfile
Написание Dockerfile на основе Java: 8 изображение
$ cd /opt /$ touch dockerfile $ vi dockerfile
Отредактированный контент выглядит следующим образом
# На основании того, какое изображение из Java: 8# установите локальную папку в текущий том контейнера /TMP# Скопируйте файл в контейнер, или напишите непосредственно в качестве добавления Docker-spring-boot-demo-0.0.1-snapshot.jar /souyunku-app.jaradd docker-boot-demo-0.0.1-snapshot.jar-apashun-sourhun-sourhun-sourhun-sourhun-sourank-sourhun-sourhun-sour 'Touch /souyunku-app.jar'# open 80 порт разоблачает 80# Настройка точки ввода команды после запуска контейнера ["java", "-djava.security.egd = file:/dev /./ urandom", "-jar", "/souyunku-app.jar"]
VI Публикуйте проект
1. Скомпилируйте изображение
$ cd /opt /$ docker build -t Souyunku -App: v1.
Видеть следующую информацию доказывает, что ваш DockerFile неплохо, и изображение было успешно скомпилировано
Отправка контекста сборки на Docker Daemon 18,72MBStep 1/6: от Java: 88: вытягивание из библиотеки/Java5040BD298390: Полностью FCE5728AAD85: PULT COMPLET 76610EC20BF5: PULT COMPLET 60170FEC2151: PULT COMPUTE E98F73DE8F0D. 49E2D6393F32: Pult Complete BB9CDEC9C7F3: Pull Complete Digest: SHA256: C1FF613E8BA25833D2E1940DA0940C3824F03F802C449F3D1815A66B7F8C0E9DSTAS: Загрузка NewerEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDEDSTATS:-> Загрузка. D23BDF5B1B1BSTEP 2/6: Том/TMP ---> работа в 0559A62B0CD5Removing Промежуточный контейнер 0559A62B0CD5 ---> B1F3846913A4STEP 3/6: Add Docker-spring-boot-demo-0.0.1-souy-souy-souy-souyy-souy-souy-souy-souy-appshot. ---> 9f60dad5d2acstep 4/6: Run bash -c 'touch /souyunku-app.jar' ---> running in 39d5c09ab614Removing промежуточный контейнер 39d5c09ab614 ---> 2B691ADF7922Step 5/6: opprose 80-> running in 11A5733333333333333333. Промежуточный контейнер 11A577437A23 ---> 78815d6fe6b2step 6/6: intrypoint ["java", "-djava.security.egd = file:/dev /./ urandom", "-jar", "/souyunku-app.jar"] ---> eCa10fed3d02-й сочетания. ECA10FED3D02 ---> 8EC4E85A0F05SUCCESSELINALESTERENTER 8EC4E85A0F05SUCCESSELIAL TAGRED SOYUNKU-APP: v1
2. Посмотреть зеркало
root@souyunku:/opt# docker images souyunku-apprepository тег идентификатор изображения создал Sizesouyunku-App v1 8ec4e85a0f05 2 минуты назад 681 МБ
3. Запустите зеркало
Фоновый демон работает, а затем отображает контейнерный порт на внешний сетевой порт 80
root@souyunku:/opt# docker run -name myspringboot -d -p 80:80 souyunku -app: v1e68d438603619e363883d4eae65d3918e1c3e00f867731207bcf06f5690dc3e00f867731207bcf06f5690dc64
4. Посмотреть процесс
Проверьте процесс контейнера, и вы увидите, что Redis находится в порту 6379, а проект Myspringboot находится на порту 80.
root@souyunku:/opt# docker container pscontainer id command создал порты состояния namese68d43860361 souyunku-app: v1 "java -djava.securit ..." Около минуты назад около минуты 0,0.0.0:80-30/tcp myspringboot0f96464661717111111.0.0:80-30/tcp myspringboot0f9646666171717171717111.0.0:80-30/tcp MySpringboot0 "Docker-EntryPoint.S ..." 39 минут назад на 39 минут 0.0.0.0:6379->6379/TCP Redis-6379
7. Служба тестирования
Доступ к браузеру: http://127.0.0.1/, Конечно, я не вводил 127.0.0.1 Я сделал это непосредственно на сервере и использовал публичный IP
Docker Compose
Docker Compose является одним из официальных проектов оркестровки Docker, отвечающих за быстрое развертывание распределенных приложений в кластерах.
Приложение, которое использует контейнер Docker, обычно состоит из нескольких контейнеров. С Docker Compose вам больше не нужно использовать сценарии оболочки для запуска контейнеров. В файле конфигурации все контейнеры определяются службами, а затем используют сценарий скомплектования Docker для запуска, остановки и перезапуска приложения, а также службы в приложении и все контейнеры, которые зависят от служб.
Суммировать
Выше приведен пример кода для проекта Docker Deployment Springboot, который редактор представил вам. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!