Docker + Swift +传递参数

问题描述 投票:-1回答:1

任何人都可以提供有关如何通过Docker将参数传递给Swift项目的帮助吗?

这是我为Swift编写的课程:

import Foundation


print("Hello, world!")


// There is always one argument passed, which is the name of the program,
// that is the file name.
if CommandLine.argc < 2 {

    print("No arguments are passed.")
    let firstArgument = CommandLine.arguments[0]
    print(firstArgument)
} else {

    print("Arguments are passed.")
    let arguments = CommandLine.arguments
    for argument in arguments {
        print(argument)
    }
}

这是我运行的命令:

docker build -t my-swift-image . 
docker run --rm my-swift-image  

Dockerfile

FROM swift
WORKDIR /app
COPY . ./
CMD swift package clean
CMD swift run

文件夹结构

- app
   - Sources
      - SuiteTest
         - main.swift

app / Sources / SuiteTest

swift docker parameter-passing
1个回答
0
投票

尝试

docker run --rm -it my-swift-image arg1 arg2

将参数添加到命令行。这样可以在这样的设置中工作

Dockerfile:

FROM swift
COPY . /myapp
WORKDIR /myapp
ENTRYPOINT ["swift", "run", "myapp"]

使用以下图像构建并运行

docker build -t myapp .
docker run --rm -it myapp arg1 arg2
© www.soinside.com 2019 - 2024. All rights reserved.