Tôi đang sử dụng Visual Studio 2017 cho máy Mac có lõi tròn và lõi EF. Sau khi thiết lập hình ảnh mssql trong vùng chứa Docker, tôi đã cố thêm chuỗi kết nối nhưng lại ném lỗi kết nối. Tôi đã thử với các tùy chọn khác nhau như địa chỉ ip, tên container, tên máy chủ, vv .. như tên máy chủ nhưng không ai trong số họ làm việc.chuỗi kết nối cho sqlserver trong vùng chứa Docker
"Default": "Server=172.17.0.2; Database=ERPDb; User=sa; Password =******;"
với tên chứa
"Default": "Server=ecstatic_hermann; Database=ERPDb; User=sa; Password=******;"
với hostname:
"Default": "Server=f45840a59623; Database=ERPDb; User=sa; Password=******;"
Trong khi kết nối thông qua sử dụng localhost trong Terminal của nó kết nối thành công
$ mssql -s localhost -p Technocrat123
Connecting to localhost...done
sql-cli version 0.6.2
Enter ".help" for usage hints.
Nhưng khi chạy ứng dụng tổn ion kết nối không thành công.
Đánh giá cao sự trợ giúp. Cảm ơn trước.
Nếu sử dụng localhost thì lỗi là
Login failed for user ''. Reason: An attempt to login using SQL authentication failed. Server is configured for Integrated authentication only.
là máy chủ sql đang chạy bên trong vùng chứa? Mã kết nối cũng có đang chạy bên trong một vùng chứa không? Nếu có cho cả hai, chúng có trên cùng một mạng không và nếu không, cổng SQL của máy chủ có bị lộ không? –
@omu_negru Máy chủ sql đang chạy bên trong vùng chứa. Ứng dụng đang chạy bên trong máy không nằm trong vùng chứa. Làm thế nào để lộ cổng SQL? Bạn có thể vui lòng hướng dẫn cho tôi? – user2695433
để lộ cổng MySql bằng cách chuyển tham số -p tới lệnh docker run: docker run -p 3306: 3306 ....... Cũng thiết lập máy chủ lưu trữ cho localhost, sau đó bạn có thể kiểm tra xem cổng có bị lộ bằng cách chạy docker hay không ps và kiểm tra phần cổng bên phải. –