
jackfirth/racket本镜像为Racket编程语言提供容器化运行环境,包含完整的Racket运行时、标准库及工具链,支持在隔离容器中快速搭建Racket开发环境、运行Racket脚本、启动交互式REPL或部署Racket应用,简化环境配置流程并确保跨平台一致性。
latest、8.17、8.16等),满足版本兼容性需求raco工具安装第三方包,或基于本镜像构建包含自定义依赖的镜像从Docker Hub拉取最新版本镜像:
bashdocker pull racket:latest
指定特定版本(如8.17):
bashdocker pull racket:8.17
运行临时容器并启动Racket交互式解释器:
bashdocker run -it --rm racket:latest racket
参数说明:
-it启用交互终端,--rm容器退出后自动删除
挂载当前目录至容器并执行脚本(假设本地脚本为app.rkt):
bashdocker run --rm -v $(pwd):/app racket:latest racket /app/app.rkt
参数说明:
-v $(pwd):/app将当前目录挂载到容器内/app路径,racket /app/app.rkt执行目标脚本
若脚本为长期运行的服务(如Web应用),可后台运行并映射端口:
bashdocker run -d --name racket-service -p 8080:8080 -v $(pwd):/app racket:latest racket /app/server.rkt
参数说明:
-d后台运行,--name指定容器名称,-p 8080:8080映射容器端口到主机
如需包含项目依赖,可创建Dockerfile构建自定义镜像:
dockerfile# 基础镜像选择指定Racket版本 FROM racket:8.17 # 设置工作目录 WORKDIR /app # 复制项目文件 COPY . /app # 安装依赖(如通过raco安装第三方包) RUN raco pkg install --auto /app/deps/my-package # 暴露服务端口 EXPOSE 8080 # 启动命令 CMD ["racket", "server.rkt"]
构建并运行自定义镜像:
bashdocker build -t my-racket-app . docker run -p 8080:8080 my-racket-app
使用docker-compose.yml管理Racket服务:
yamlversion: '3' services: racket-app: image: racket:8.17 container_name: racket-service volumes: - ./src:/app ports: - "8080:8080" command: racket /app/server.rkt restart: unless-stopped
启动服务:
bashdocker-compose up -d
racket:8.17)而非latest,避免版本变更导致兼容性问题raco pkg install或info.rkt声明,在容器内安装-v挂载宿主机目录或使用Docker卷--memory、--cpus限制容器资源,避免过度占用主机资源manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务