- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在将作为 docker 容器运行的应用程序连接到 mongoDB 时遇到问题。我知道新版本 docker-compose 已弃用“链接”,因此我尝试使用自定义网络。我的 docker-compose.yml:
version: "3.3"
dịch vụ:
app:
container_name: app
xây dựng: ./app
phụ thuộc vào:
- "mongodb"
networks:
- my-network
command: pm2-docker start pm2.config.js --watch
khối lượng:
- ./app/logs:/opt/app/logs
- ./app:/opt/app
cổng:
- "3010:80"
mongodb:
image: mongo
container_name: mongodb
restart: always
môi trường:
MONGO_INITDB_ROOT_PASSWORD: pw
MONGO_INITDB_ROOT_USERNAME: login
MONGO_INITDB_DATABASE: dbname
khối lượng:
- ./mongodb/db:/data/db
cổng:
- "27017:27017"
networks:
- my-network
networks:
my-network:
driver: bridge
我的应用程序的 Dockerfile:
FROM node:10.7.0
RUN npm i -g pm2
RUN pm2 install pm2-logrotate \
&& pm2 set pm2-logrotate:max_size 50M \
&& pm2 set pm2-logrotate:compress true \
&& pm2 set pm2-logrotate:workerInterval 60
RUN mkdir -p /tmp
COPY package*.json /tmp/
RUN cd /tmp \
&& npm i \
&& npm cache clean --force
RUN mkdir -p /opt/app && cp -a /tmp/node_modules /opt/app/
WORKDIR /opt/app
COPY . /opt/app/
VOLUME [ "/opt/app/logs/" ]
ENV PORT 80
ENV MONGODB_AUTH mongodb://login:pw@127.0.0.1:27017/dbname
EXPOSE 80
CMD [ "pm2-docker", "start", "pm2.config.js", "--env", "production" ]
Khi tôi chạy MongoClient.connect(process.env.MONGODB_AUTH, { useNewUrlParser: true });
时,我在应用程序中收到以下错误消息:
MongoNetworkError: failed to connect to server [127.0.0.1:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017]
我不明白我做错了什么。这是 docker network ls 的控制台输出:
NETWORK ID NAME DRIVER SCOPE
4731ec3d6886 bridge bridge local
e5a6bf78bd5f docker_gwbridge bridge local
aae21167a37a host host local
d6ba0dfe01a3 myproject_default bridge local
34af02bd434d myproject_my-network bridge local
5911111233bf none null local
Đây làdocker网络检查myproject_my-network
的输出:
[
{
"Name": "myproject_my-network",
"Id": "34af02bd434d7fe8b6755f584b45eeb0a47fafb087d7f44023598d6ae8bb79a4",
"Created": "2018-08-05T22:21:06.938675177+03:00",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.20.0.0/16",
"Gateway": "172.20.0.1"
}
]
},
"Internal": false,
"Attachable": true,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {},
"Options": {},
"Labels": {
"com.docker.compose.network": "my-network",
"com.docker.compose.project": "myproject"
}
}
]
当我尝试使用 172.20.0.1 而不是 127.0.0.1 时,我收到相同的错误。我很高兴为我的问题提供任何帮助
1 Câu trả lời
您似乎正在名为 mongodb
的容器内运行 mongodb。
MongoDB 正在监听容器的端口 27017,并且您的容器将其发布到主机的端口 27017 上。
但是在您的应用程序容器内,没有应用程序正在监听本地主机的端口 27017。
所以你的错误是正常的,你不应该以这种方式连接到mongo。相反,您可以尝试:
ENV MONGODB_AUTH mongodb://login:pw@mongodb:27017/dbname
您仍然需要从主机上使用 mongodb://login:pw@127.0.0.1:27017/dbname
访问 mongo。
docker compose 的文档中有一个示例:
Within the web container, your connection string to db would look like postgres://db:5432, and from the host machine, the connection string would look like postgres://{DOCKER_IP}:8001. From https://docs.docker.com/compose/networking/
关于node.js - 如何将docker容器连接到mongodb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51698026/
Tôi biết câu hỏi này có thể đã được hỏi trước đây, nhưng tôi đã kiểm tra tất cả các câu hỏi và tôi nghĩ trường hợp của tôi khác (xin hãy thông cảm). Vì vậy, tôi có hai tập dữ liệu, tập đầu tiên là tập dữ liệu thử nghiệm và tập thứ hai là các dự đoán (giá trị dự đoán, đó là lý do tại sao không có cột dữ liệu) mà tôi đã lưu trong một khung dữ liệu. Tôi muốn hợp nhất hai cái đó
Với sự trợ giúp của phương thức .loc, tôi xác định các giá trị trong một cột của khung dữ liệu Panda dựa trên các giá trị trong một cột khác của cùng khung dữ liệu đó. Đoạn mã dưới đây để bạn tham khảo: var1 = output_df['Player'].loc[out
Khi tôi sử dụng WinSCP trong Windows để kết nối với VMware thông qua Ubuntu, nó báo: Máy chủ đã từ chối kết nối SFTP, nhưng nó
Tôi đang phát triển một ứng dụng Android sử dụng dịch vụ web xml. Nó hoạt động tốt khi được kết nối trong mạng wi-fi, nhưng không thành công (http 404 không tìm thấy) khi được kết nối trong mạng 3G. Điều này không chỉ xảy ra ở các thiết bị. Để đo lường
Tôi có một tệp XIB chứa điều khiển của tôi, được tải vào Interface Builder (Xcode 4.0.2 trên Snow Leopard). Chủ sở hữu của tệp được đặt thành someClassController
Tôi quản lý cơ sở dữ liệu MySQL trên máy cục bộ của mình và kết nối với nó thông qua C bằng cách chạy chương trình sau: #include #include #include int main(int argc, char** arg
Tôi không hiểu tại sao mỗi lần có ai đó truy cập vào một trang trên trang web của tôi thì lại có một kết nối mới đến cơ sở dữ liệu được mở ra. Cuối cùng, tôi tải đến khoảng 300 và gặp lỗi và trang không tải được nữa. Cách tôi nghĩ nó nên hoạt động là, tôi đặt maxIdle thành 30, nghĩa là
Đang tìm cách dọn dẹp các tệp .txt trong NMEA GPS. Mã hiện tại của tôi như sau. xóa = ['$GPGGA', '$GPGSA', '$GPGSV', '$PSRF156', ] tìm kiếm
Tôi có một URL, một tên người dùng và một mật khẩu. Tôi muốn thiết lập kết nối VPN trong C# .Net WinForms. Bạn có thể cho tôi biết phải bắt đầu từ đâu không? Có API của bên thứ ba nào không? Các ví dụ về mã sẽ được đánh giá cao... Câu trả lời hay nhất Bạn có thể làm như thế này
Có cách nào tốt hơn để chuyển đổi một vectơ chuỗi thành một vectơ ký tự có ký tự kết thúc bằng số không giữa các chuỗi không? Vì vậy, nếu tôi có một vectơ chứa các chuỗi sau, "test", "my", "string", thì tôi muốn nhận được một
Tôi đang viết một thư viện liên tục kiểm tra kết nối của thiết bị Android và gửi lệnh gọi lại khi thiết bị được kết nối, ngắt kết nối hoặc kết nối Internet chậm. https://github.com/muddassir235/connection_ch
Hệ điều hành của tôi: Centos 7 + CLOUDLINUX 7.7 Khi tôi thử đăng nhập vào Mysql từ máy chủ [root@server3 ~]# Mysql -u root -h localhost -P 330
Tôi gặp lỗi: Puma tìm thấy lỗi này: Không thể mở kết nối TCP tới localhost:9200 (Kết nối bị từ chối - kết nối (2) cho cổng 'localhost' 9200) (Faraday::ConnectionFailed) trong
Xin hãy cho tôi giải pháp khắc phục lỗi sau. Đây là một ứng dụng trò chuyện.... Mã và lỗi như sau:: conversations_controller.rb def create if Conversation.bet
Tôi muốn nối dữ liệu từ hai ô thành một ô. Tôi cũng muốn chỉ kết hợp những ô có cùng ID. ID nhiệm vụ Tên 4355.2 Người tham gia 4355.2 Người lãnh đạo 4462.1 Trực tuyến 4462.1 Nhanh 4597.1
Tôi thường cần nối các trường trong TSQL... Hai vấn đề mà TSQL buộc bạn phải xử lý khi sử dụng toán tử "+" là Thứ tự ưu tiên kiểu dữ liệu và giá trị NULL. Với thứ tự ưu tiên kiểu dữ liệu, vấn đề nằm ở lỗi chuyển đổi. 1)
Có ứng dụng Facebook Connect dành cho iPad hoặc iPhone không? Ý tưởng là đăng nhập vào ứng dụng và sau đó có thể xem người dùng Facebook nào của tôi cũng đang sử dụng ứng dụng và các tính năng của nó. Câu trả lời tốt nhất là có.
Tôi đang gặp vấn đề kỳ lạ khi nối hoặc in chuỗi. Tôi có một char * mà tôi có thể thiết lập thành một trong nhiều giá trị từ một chuỗi ký tự. char *myStrLiteral = NULL; ... nếu (blah) myStrLiteral
Đối với dữ liệu sau - hãy cho $x := "Yahooooo !!!! Chọn một số - " hãy cho $y := 1 2 3 4 5 6 7 Tôi muốn lấy
Tôi đang xem video đào tạo về Perl của UDEMY, nhưng video không rõ ràng và có vẻ như có lỗi. Bài đào tạo này sẽ hướng dẫn cách nối 2 chuỗi bằng ví dụ sau: #!usr/bin/perl print $str = "Hi";
Tôi là một lập trình viên xuất sắc, rất giỏi!