- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在尝试让 Docker 与 Postgres 和 Flask 一起工作,但我遇到了 Postgres 密码和 docker 无法找到我的 entry.sh 文件的问题。这似乎是 docker 未正确更新的问题,但现在更新后,当我运行 docker-compose up 时出现“go”错误,我不知道它们是什么意思。
这是错误日志:
panic: runtime error: index out of range [1] with length 1
goroutine 37 [running]:
github.com/docker/compose-cli/pkg/compose.(*convergence).ensureService(0xc00027ff20, 0x2120ba8, 0xc000454450, 0xc000240f00, 0xc0001ce7c8, 0x3, 0x0, 0x0, 0x0, 0xc000240a00, ...)
github.com/docker/compose-cli/pkg/compose/convergence.go:222 +0x11f1
github.com/docker/compose-cli/pkg/compose.(*convergence).apply.func1(0x2120ba8, 0xc000454450, 0xc0001ce7c8, 0x3, 0x0, 0x0)
github.com/docker/compose-cli/pkg/compose/convergence.go:99 +0x21f
github.com/docker/compose-cli/pkg/compose.run.func1(0x0, 0x0)
github.com/docker/compose-cli/pkg/compose/dependencies.go:102 +0xa3
golang.org/x/sync/errgroup.(*Group).Go.func1(0xc000590540, 0xc000626180)
golang.org/x/sync@v0.0.0-20210220032951-036812b2e83c/errgroup/errgroup.go:57 +0x59
created by golang.org/x/sync/errgroup.(*Group).Go
golang.org/x/sync@v0.0.0-20210220032951-036812b2e83c/errgroup/errgroup.go:54 +0x66
这是我的 docker-compose.yml:
services:
api:
container_name: api
build:
context: .
dockerfile: api/Dockerfile.api
image: mutcompute-api
ports:
- "5000:5000"
volumes:
- ./api:/app/
env_file:
- ./api/.env
command: gunicorn -b 0.0.0.0:5000 api:app && flask db upgrade
# entrypoint: ["./api/entry.sh"]
depends_on:
- db
client:
container_name: client
build:
context: .
dockerfile: client/Dockerfile.client
image: mutcompute-client
ports:
- "3000:3000"
volumes:
- ./client:/app/
email:
container_name: email
build:
context: .
dockerfile: api/Dockerfile.api
image: mutcompute-api
ports:
- "8025:8025"
command: python -m smtpd -n -c DebuggingServer 0.0.0.0:8025
db:
image: postgres:13-alpine
volumes:
- postgres_data:/var/lib/postgresql/data
environment:
POSTGRES_USER: mutcompute
POSTGRES_PASSWORD: mutcompute
POSTGRES_DB: mutcompute_dev
networks:
- default
ports:
- 5405:5432
restart: always
volumes:
- ./postgres-data:/var/lib/postgresql/data
我的 Dockerfile:
FROM python:slim
LABEL maintainer="Brad Alexander"
RUN useradd mutcompute
WORKDIR /app
COPY . /app/
COPY entry.sh /app/
ENV FLASK_APP api.py
RUN chown -R mutcompute:mutcompute /app && \
# chmod +x ./entry.sh && \
pip install -r requirements.txt
USER mutcompute
EXPOSE 5000
和一个粗略的文件树
Project
|-api
|-app/
|-Dockerfile-api
|-entry.sh
|-client
|-src/
|-Dockerfile-client
|-Docker-compose.yml
客户端是 React,在更新之前运行良好。
⠙ Container api Recreate 0.2s
⠙ Container bb72362b9e19_api Recreate 0.2s
panic: runtime error: index out of range [1] with length 1
...
希望这是足够的信息。我真的很感激任何帮助!
最佳答案
域名注册地址:
我想我在后台有绑定(bind)端口的容器。
简单修复:
docker-compose up --remove-orphans // not sure if this step is necessary
docker-compose down
docker-compose up
我是如何修复它的:
docker-compose --remove -orphans
,这实际上并没有多大作用。在搜索了 GitHub 问题后,看到大部分问题都与副本有关,我决定到底是什么,并在 api 服务中添加了副本部分。虽然这个错误与副本无关,但我得到了一个不同的错误:
WARNING: The "api" service is using the custom container name "api". Docker requires each container to have a unique name. Remove the custom name to scale the service.
Error response from daemon: driver failed programming external connectivity on endpoint <...> Bind for 0.0.0.0:5000 failed: port is already allocated
docker-compose down
当我用 db 服务切换回分支时,一切正常!
关于Docker-compose 错误—— panic : runtime error: index out of range [1] with length 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68900909/
在Go(go1.2.1 linux/amd64)中运行http服务器时,我遇到了一个罕见的错误。 unexpected fault address 0xb84004 fatal error: faul
使用以下代码: var i interface{} = "hello" f, ok := i.(float64) fmt.Println(f, ok) f = i.(float64) // panic
考虑以下故意导致双重 panic 的代码: use scopeguard::defer; // 1.1.0 fn main() { defer!{ panic!() }; defer!
如果我传递给 std::panic::set_hook 的函数发生 panic 会怎样? 我可以想象对此做出多种 react :考虑这个 UB,中止程序 like C++ does ,为新的 pani
我有一个 string,当我想获取 i 索引处的值时它会崩溃,但是当我切出相同的 string 保持较低的索引值作为长度然后它不会 panic 。想知道 1 和 2 有何不同? func main()
看起来不可能从 panic 中的 panic 中恢复过来? func TestError(t *testing.T) { e := &myErr{p: false} fmt.Print
当我使用 cargo test 运行以下程序时: use std::panic; fn assert_panic_func(f: fn() -> (), msg: String) { let
在开发过程中,我遇到了崩溃,并显示了内核 panic 上传模式。 有没有办法以某种方式连接到设备并提取日志? 最佳答案 我希望这就是您正在寻找的...来源:StackOverflowAndroid 创
我需要制造内核 panic ,我尝试了以下操作 sysctl kernel.panic=0 && echo c > /proc/sysrq-trigger 当我运行上面的命令时。我看到系统总是重新启动
是否可以从 recover 中“重新抛出”错误并保留原始堆栈跟踪?我知道的最好的办法就是再次 panic ,但这确实会创建一个新的堆栈跟踪。 func do() { defer func()
我正在使用 panic::catch_unwind引起 panic : use std::panic; fn main() { let result = panic::catch_unwind
func sub(){ defer func (){ panic(2) }() panic(1) } func main(){ defer func()
考虑到我使用的是原始的“errors”go 包。 还有,panic(11) 和 panic("11") 之间的区别? 最佳答案 panic定义为 func panic(v interface{}),调
我是 golang 的新手。在定义位置后 try catch 主 block 中的错误后,我的程序出现 panic 。我在某处读过,添加 defer.close() 可能会有所帮助,但编译器再次说你的
有这种新的编程语言 V-lang由亚历克斯·梅德维尼科夫 (Alex Medvednikov) 创建。我目前使用的是 V-lang 0.1.11 版。我可以在 V-lang 中声明一个数组,如下所示:
在启动 linux 时,我在控制台上得到以下打印,并且系统挂起。 Waiting for root device /dev/mmcblk0p2... mmc_host mmc0: Bus speed
我已经实现了这个 answer 中提到的 goroutine 的生产者-消费者模式.但它有时会出现 panic ,并出现错误提示:“ panic :同步:负 WaitGroup 计数器”。我有如下示例
上下文: https://github.com/fusspawn/tserver/blob/master/app/controllers/gorp.go 作为尝试设置 gorm 的一部分,我尝试转换标
专注Golang,Python语言,云原生,人工智能领域得博主 过去经历的意义在于引导你,而非定义你, 只要我们足够努力,任何人都有无限潜力 panic 抛出异常函数 recove
这个问题在这里已经有了答案: How to return a value in a Go function that panics? (3 个回答) 2年前关闭。 package main impor
我是一名优秀的程序员,十分优秀!