在Docker容器中运行一个Swift应用程序,可以通过以下步骤进行:
- 编写Swift应用程序:
swift
print("Hello, World!")
保存为main.swift。
- 构建Dockerfile:
Dockerfile
FROM swift:5.2 AS build
WORKDIR /app
COPY main.swift .
RUN swift build -c release
FROM ubuntu:18.04
WORKDIR /app
COPY --from=build /app/.build/release/main .
ENTRYPOINT ["./main"]
此Dockerfile采用多阶段构建。第一阶段基于Swift镜像编译Swift应用程序,第二阶段基于Ubuntu镜像仅复制构建好的二进制文件,并指定为入口点。
- 构建镜像:
docker build -t swift-app .
- 运行容器:
docker run swift-app
输出:
Hello, World!
- 在Docker Compose中定义应用:
yaml
version: '3'
services:
swift-app:
build: .
image: swift-app
docker-compose run swift-app
可以一键运行应用。