Tôi mới bắt đầu sử dụng docker và có thể tôi đang bắt đầu hơi lớn nhưng tôi đã tìm thấy một bài báo giải thích về cách cài đặt Coldfusion (chạy bằng hộp lệnh) với mysql. Trình soạn thảo docker này hoạt động tốt. Tôi đã có ý tưởng thêm vào phpmyadmin để tôi có thể kết nối với mysql.
Để tham khảo bài viết gốc ở đây: https://cfswarm.inleague.io/part3-docker-in-development/part3-running-docker
Vì vậy, tôi đã sửa đổi docker soạn yml kéo vào phpmyadmin
phiên bản: '3.6' # nếu không có phiên bản nào được chỉ định thì v1 được giả định. Đề xuất tối thiểu v2
khối lượng:
dữ liệu sql:
mạng:
cfswarm-đơn giản:
bí mật:
cfconfig:
tập tin: ./config/cfml/cfconfig.json
dịch vụ:
cfswarm-mysql: # tên thân thiện. đây cũng là tên DNS bên trong mạng
hình ảnh: mysql:5.7
container_name: cfswarm-mysql
môi trường:
MYSQL_ROOT_PASSWORD: 'myAwesomePassword'
MYSQL_DATABASE: 'cfswarm-simple-dev'
MYSQL_ROOT_HOST: '%'
MYSQL_LOG_CONSOLE: 'đúng'
khối lượng:
- loại: khối lượng
nguồn: dữ liệu sql
mục tiêu: /var/lib/mysql
cổng:
- 3306:3306
mạng:
- cfswarm-đơn giản
cfswarm-cfml:
hình ảnh: ortussolutions/commandbox:alpine
container_name: cfswarm-cfml
khối lượng:
- loại: ràng buộc
nguồn: ./app-one
mục tiêu: /ứng dụng
cổng:
- 8081:8080
env_file:
- ./config/cfml/simple-cfml.env
bí mật:
- nguồn: cfconfig # đây không thực sự là một bí mật nhưng triển khai không theo ngăn xếp không hỗ trợ cấu hình, vì vậy hãy biến nó thành một
mục tiêu: cfconfig.json
mạng:
- cfswarm-đơn giản
phụ thuộc:
- cfswarm-mysql
- cfswarm-nginx
cfswarm-hai-cfml:
hình ảnh: ortussolutions/commandbox:alpine
container_name: cfswarm-hai-cfml
khối lượng:
- loại: ràng buộc
nguồn: ./app-hai
mục tiêu: /ứng dụng
env_file:
- ./config/cfml/simple-cfml.env
bí mật:
- nguồn: cfconfig # đây không thực sự là một bí mật nhưng triển khai không theo ngăn xếp không hỗ trợ cấu hình, vì vậy hãy biến nó thành một
mục tiêu: cfconfig.json
phụ thuộc:
- cfswarm-mysql
- cfswarm-nginx
mạng:
- cfswarm-đơn giản
**phpmyadmin:
hình ảnh: phpmyadmin/phpmyadmin: mới nhất
container_name: phpmyadmin
khởi động lại: luôn luôn
môi trường:
PMA_HOST: cfswarm-mysql
PMA_USER: gốc
PMA_PASSWORD: 'myAwesomePassword'
cổng:
- "8082:80"**
cfswarm-nginx:
hình ảnh: nginx
lệnh: [nginx-debug, '-g', 'daemon off;']
container_name: cfswarm-nginx
cổng:
- 80:80
- 443:443
khối lượng:
- loại: ràng buộc
nguồn: ./app-one
mục tiêu: /var/www/app-one
- loại: ràng buộc
nguồn: ./app-hai
mục tiêu: /var/www/app-two
- loại: ràng buộc
nguồn: ./nginx/
mục tiêu: /etc/nginx
mạng:
- cfswarm-đơn giản
Vì vậy, ngay tại dòng 63, tôi đã thêm vào phần kéo cho phpymyadmin, nó có vẻ hoạt động, nó trả lời trên cổng 8082 nhưng nó báo lỗi cho tôi:
MySQL đã nói: Tài liệu
Không thể kết nối: cài đặt không hợp lệ.
mysqli::real_connect(): php_network_getaddresses: getaddrinfo không thành công: Lỗi tạm thời trong việc phân giải tên
mysqli::real_connect(): (HY000/2002): php_network_getaddresses: getaddrinfo không thành công: Lỗi tạm thời trong việc phân giải tên
phpMyAdmin đã cố gắng kết nối với máy chủ MySQL và máy chủ đã từ chối kết nối.Bạn nên kiểm tra máy chủ, tên người dùng và mật khẩu trong cấu hình của mình và đảm bảo rằng chúng tương ứng với thông tin do quản trị viên của máy chủ MySQL cung cấp.
Một điều mà tôi không thể làm việc là thêm vào mạng cfswarm-simple. Khi tôi cố gắng thêm dòng ngay bên dưới cổng (dòng 72), tôi sẽ gặp lỗi khi cố khởi động trình soạn thảo docker.
Ngay bây giờ, tôi muốn có thể kết nối với docker mysql với docker của phpmyadmin.
TIA