docker - 编辑容器内部文件
使用 exec 命令进入到容器内部
这是 docker 基础命令,必须学会
# 完整命令
docker exec -it [container_id] /bin/bash
# 可以简写
docker exec -it [container_id] bash
# 容器内,一般不会装太多软件,通常只能用一些基础命令
# 例如:编辑只能用 vi 命令;只能用 ls -l 命令;等等
# 想要退出容器的话,使用 exit 命令
更多 exec 可用的命令
docker exec -help
-d, --detach Detached mode: run command in the background
--detach-keys string Override the key sequence for detaching a container
-e, --env list Set environment variables (default )
--env-file list Read in a file of environment variables
-i, --interactive Keep STDIN open even if not attached
--privileged Give extended privileges to the command
-t, --tty Allocate a pseudo-TTY
-u, --user string Username or UID (format: "<name|uid>[:<group|gid>]")
-w, --workdir string Working directory inside the container
翻译:
-d, --detach 离模式:在后台执行命令
--detach-keys string 覆盖分离容器的键序列
-e, --env list 设置环境变量(默认)
--env-file list 读取环境变量的文件
-i, --interactive 保持STDIN打开,即使没有附加
--privileged 赋予该命令扩展权限
-t, --tty 分配一个伪tty
-u, --user string 用户名或UID(格式:"<name| UID >[:<group|gid>]")
-w, --workdir string 容器内的工作目录
使用挂载
部署软件的时候,在 run 命令中,增加 -v 参数,将宿主机的文件目录,挂载到容器内部。
这样,修改挂载目录中的文件,容器就能读到,不过能不能生效,要看你改的是什么文件,有时候需要重启容器。
样例:
# 将主机的 /root/tomcat/webapps 挂载到容器的 /usr/local/tomcat/webapps 目录。
docker run -d -p 8080:8080 --name tomcat_hello -v /root/tomcat/webapps:/usr/local/tomcat/webapps tomcat:8
复制文件到容器内部
docker cp [file] [container_id]:[target]
# 将 test.txt 复制到容器的根目录,路径根目录通常是:/root
docker cp test.txt [container_id]:/
疯狂的妞妞 :每一天,做什么都好,不要什么都不做!