Mic*_*bry 61 docker docker-machine
我终于想出了如何让docker启动并运行.
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
Run Code Online (Sandbox Code Playgroud)
我将它链接到一个redis实例,很酷.
这是从头开始,我假设我创建了redis实例
docker run --name my-forum-redis -d -p 6379:6379 nodebb/docker:ubuntu-redis
Run Code Online (Sandbox Code Playgroud)
它从远程仓库中提取图像?
NodeBB提供了Dockerfile https://github.com/NodeBB/NodeBB/blob/master/Dockerfile我真的不太确定如何使用它.我假设我可以通过在我的遥控器上调用此Dockerfile以某种方式创建本地环境.
它是否正确?如果是这样,我如何创建指向远程的本地实例?
And*_*and 75
下载文件并从同一目录运行 docker build -t <nodebb> .
这将在本地计算机上为您提供一个名为nodebb的映像,您可以使用该映像启动容器 docker run -d nodebb
zhi*_*sme 35
直接和简单的解决方案是:
docker build .
=> ....
=> Successfully built a3e628814c67
docker run -p 3000:3000 a3e628814c67
Run Code Online (Sandbox Code Playgroud)
3000 - 可以是任何端口
a3e628814c68 - 成功构建命令给出的哈希结果
注意:您应该在包含Dockerfile 的目录中。
Auz*_*ias 31
您无法从Dockerfile启动容器.
过程如下:
Dockerfile = [
docker build] => Docker image = [docker run] => Docker容器
要启动(或运行)容器,您需要一个图像.要创建映像,您需要构建Dockerfile [1].
[1]:您还可以docker import使用tarball或再次使用tarball docker load.
Fre*_*ers 22
标题让我来到这里,它直接从 Dockerfile 运行容器。
docker build --no-cache . | grep "Successfully built" | sed 's/Successfully built //g' | xargs -I{} docker run {}
Run Code Online (Sandbox Code Playgroud)
Pav*_*cek 15
尽管上述答案是有用的,但这确实对我有所帮助,所以我也将其放在此处。
从文档中:
除了指定上下文,您还可以在URL中传递单个Dockerfile或通过STDIN将文件通过管道传递。要从STDIN传递Dockerfile:
$ docker build - < Dockerfile
Run Code Online (Sandbox Code Playgroud)
使用Windows上的Powershell,您可以运行:
Get-Content Dockerfile | docker build -
Run Code Online (Sandbox Code Playgroud)
构建完成后,运行命令:
docker image ls
Run Code Online (Sandbox Code Playgroud)
您将看到如下内容:
REPOSITORY TAG IMAGE ID CREATED SIZE
<none> <none> 123456789 39 seconds ago 422MB
Run Code Online (Sandbox Code Playgroud)
复制您的实际IMAGE ID,然后运行
docker run 123456789
Run Code Online (Sandbox Code Playgroud)
末尾的数字是上一步的实际图像ID
如果您不想记住图像ID,可以通过以下方式标记图像
docker tag 123456789 pavel/pavel-build
Run Code Online (Sandbox Code Playgroud)
哪个会将您的图片标记为 pavel/pavel-build
使用 docker 桌面 20.10.8
您可以使用 docker-compose 文件来命名和配置您的环境。
services:
my_instance:
build:
context: .
dockerfile: my_instance.dockerfile
Run Code Online (Sandbox Code Playgroud)
然后docker compose up或者docker compose run /bin/bash或者其他什么。
根据https://docs.docker.com/compose/compose-file/compose-file-v3/#dockerfile
| 归档时间: |
|
| 查看次数: |
81040 次 |
| 最近记录: |