Я наконец-то понял, как запустить докер.
docker run --name my-forum-nodebb --link my-forum-redis:redis -p 80:80 -p 443:443 -p 4567:4567 -P -t -i nodebb/docker:ubuntu
Я связал его с экземпляром Redis, круто.
Это с нуля, и я предполагаю, что когда я создал экземпляр redis
docker run --name my-forum-redis -d -p 6379:6379 nodebb/docker:ubuntu-redis
он вытягивает образ из удаленного репо?
NodeBB предлагает Dockerfile
https://github.com/NodeBB/NodeBB/blob/master/Dockerfile. Я не совсем уверен, как его использовать. Я предполагаю, что могу каким-то образом создать локальную среду, вызвав этот Dockerfile на своем пульте.
Это правильно? Если да, то как я могу создать локальный экземпляр, указывающий на удаленный?
docker
docker-machine
Майкл Джозеф Обри
источник
источник
Ответы:
Загрузите файл и из того же каталога запустите
docker build -t nodebb .
Это даст вам изображение на вашем локальном компьютере с именем nodebb, из которого вы можете запустить контейнер
docker run -d nodebb
(вы можете изменить nodebb на свое собственное имя).источник
docker build -t <nodebb> .
дает мнеfile exists: .
. У меня есть существующий проект с файлом,Dockerfile
поэтому я просто запустил его в этом каталоге.Вы не можете запустить контейнер из Dockerfile.
Процесс выглядит так:
Для запуска (или запуска) контейнера вам понадобится изображение. Чтобы создать образ, вам нужно собрать Dockerfile [1].
[1]: вы также можете
docker import
изображение из архива или еще разdocker load
.источник
Хотя приведенные выше ответы можно было использовать, это действительно помогло мне, поэтому я также помещаю его здесь.
Из документации :
Когда сборка будет завершена, запустите команду:
Вы увидите что-то вроде этого:
Скопируйте свой настоящий ИДЕНТИФИКАТОР ИЗОБРАЖЕНИЯ и запустите
Где число в конце - это фактический идентификатор изображения с предыдущего шага
Если вы не хотите запоминать идентификатор изображения, вы можете пометить свое изображение с помощью
Что пометит ваше изображение как
pavel/pavel-build
источник
Простое и простое решение:
3000
- может быть любой портa3e628814c68
- результат хеширования, полученный командой успешной сборкиПРИМЕЧАНИЕ : вы должны находиться в каталоге, содержащем Dockerfile .
источник