2015-01-20 32 views
23

tôi đã sử dụng lệnh này:
docker exec compassionate_mclean cd /root/python
Lỗi được thông báo là

Docker-exec: thất bại trong việc exec: exec: " cd ": tập tin thực thi không tìm thấy trong $ PATH

Vui lòng giúp tôi ra

Trả lời

64

cd là một built-in vỏ c ommand, bạn không thể đặt nó làm lệnh để chạy. Bạn phải sử dụng:

docker exec -i compassionate_mclean bash -c "cd /root/python && python myscript.py" 

Nếu bạn muốn xem đầu ra, hãy đảm bảo thêm cờ -i như được hiển thị ở trên. Trong trường hợp này tuy nhiên, bạn chỉ có thể chạy python như entrypoint của bạn:

docker exec -i compassionate_mclean python /root/python/myscript.py 
+0

Nhưng sau lệnh này, tôi cần chạy một tập lệnh python nằm tại thư mục đó. Làm cách nào để thực hiện điều đó? – sabarish

+0

Chỉ cần thêm '&& python myscript.py'. Xem cập nhật của tôi –

+0

Cảm ơn bạn .Điều này hoạt động – sabarish

1

Bạn không thể làm điều đó, bạn có thể làm một trong hai docker exec -it my_container /bin/bash và sau đó phát hành một số lệnh với các phiên tương tác này, hoặc docker exec -d my_container touch myfile nếu bạn chỉ muốn tạo một tệp, xem các ví dụ tại https://docs.docker.com/reference/commandline/cli/#examples_3

Các vấn đề liên quan