Tôi đang cố bắt đầu vùng chứa của riêng mình và liên kết nó với vùng chứa mysql chính thức. Tôi đang sử dụng docker-compose để bắt đầu cả hai thùng chứa và liên kết chúng với nhau. Thùng chứa của riêng tôi được cho là một LAMP-stack thông thường chạy một ứng dụng PHP đơn giản.Chạy docker-compose với mysql và thùng chứa docker riêng
Khi tôi chạy docker-compose up
, cả hai đều được xây dựng đúng cách, nhưng khi docker cố chạy chúng, chúng chỉ dừng lại với mã lỗi mytestservice_web_1 exited with code 0
. Tôi không thể thấy bất kỳ lỗi nào trong nhật ký dựng.
Đây là tôi Docker-compose.yml
web:
build: .
links:
- mysql
ports:
- "80:80"
mysql:
image: mysql:5.6
environment:
- MYSQL_ROOT_PASSWORD=verysecret
Đây là Dockerfile tôi cho container của riêng tôi.
FROM linode/lamp
WORKDIR /var/www
RUN a2enmod rewrite
ADD . /var/www/mytestservice
ADD mytestservice.conf /etc/apache2/sites-enabled/
CMD service apache2 start
Nếu tôi bắt đầu thủ công bằng trình docker thì không có vấn đề gì.
Làm cách nào để giữ các thùng chứa hoạt động?
tôi đoán là ':' trong 'mysql: 5.6' được ném ra khỏi cú pháp yaml. Hãy thử gói nó trong dấu ngoặc kép: 'image:" mysql: 5.6 "' –
Điều đó không hiệu quả. Tôi nghĩ rằng vấn đề là tôi không chỉ định rằng các container sẽ tiếp tục chạy. Tôi đang chạy một hình ảnh đèn mà không có một cách rõ ràng để tiếp tục chạy, trừ khi tôi bắt đầu nó với bash. – magnudae
Vâng CMD của bạn là sai, nó sẽ bắt đầu apache như là một quá trình tiền cảnh. –