使用minio作为s3存储,k8s部署picimpact,上传照片失败
s3配置信息:
console报错信息: [Error: getaddrinfo ENOTFOUND pic.http] { errno: -3008, code: 'ENOTFOUND', syscall: 'getaddrinfo', hostname: 'pic.http', '$metadata': [Object] }
代码中没找到相关的信息,貌似是请求网络的时候请求hostname变成了pic.http很奇怪。
非常感谢您提交了 issues,我们很高兴能够与您一起合作解决这个问题。我们将尽快进行审核,并会在 24 小时内回复您。在此期间,如有任何问题,请随时联系我们。再次感谢您的贡献!
附上k8s部署时候的配置,应该是没问题的:
apiVersion: v1
kind: Namespace
metadata:
name: picimpact-system
---
apiVersion: v1
kind: ConfigMap
metadata:
name: picimpact-config
namespace: picimpact-system
data:
DATABASE_URL: "postgresql://picimpactuser:[my-pass-****]@picimpact-postgresql:5432/picimpactdb"
AUTH_SECRET: "[my-pass-****]"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: pgdata
namespace: picimpact-system
spec:
storageClassName: longhorn
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: picimpact-postgresql
namespace: picimpact-system
spec:
selector:
matchLabels:
app: picimpact-postgresql
serviceName: "postgresql"
replicas: 1
template:
metadata:
labels:
app: picimpact-postgresql
spec:
containers:
- name: postgres
image: postgres:13
ports:
- containerPort: 5432
name: postgres
env:
- name: POSTGRES_DB
value: "picimpactdb"
- name: POSTGRES_USER
value: "picimpactuser"
- name: POSTGRES_PASSWORD
value: "[my-pass-****]"
volumeMounts:
- name: pgdata
mountPath: /var/lib/postgresql/data/postgresql
volumeClaimTemplates:
- metadata:
name: pgdata
spec:
storageClassName: longhorn
accessModes: [ "ReadWriteOnce" ]
resources:
requests:
storage: 1Gi
---
apiVersion: v1
kind: Service
metadata:
name: picimpact-postgresql
namespace: picimpact-system
spec:
ports:
- port: 5432
name: postgres
clusterIP: None # Headless service for stateful set
selector:
app: picimpact-postgresql
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: picimpact
namespace: picimpact-system
spec:
replicas: 1
selector:
matchLabels:
app: picimpact
template:
metadata:
labels:
app: picimpact
spec:
containers:
- name: picimpact
image: besscroft/picimpact:latest
ports:
- containerPort: 3000
env:
- name: DATABASE_URL
valueFrom:
configMapKeyRef:
name: picimpact-config
key: DATABASE_URL
- name: AUTH_SECRET
valueFrom:
configMapKeyRef:
name: picimpact-config
key: AUTH_SECRET
---
apiVersion: v1
kind: Service
metadata:
name: picimpact-service
namespace: picimpact-system
spec:
ports:
- protocol: TCP
port: 3000
targetPort: 3000
selector:
app: picimpact
目前使用逻辑是会强制添加上 https://......
目前使用逻辑是会强制添加上
https://......
嗯嗯,我debug也破案了,不支持http://,而是为拼接https://,导致最后拼接出来的路径为 https://pic.http://192... ,如果后续不打算支持可以关闭该issue,感谢作者!
我后面抽空试一下这样做是否可行,近期生病,短时间内没精力弄了。