当前位置:首页 > NAS > 正文内容

docker如何修改容器内部文件的方法

ym02302年前 (2024-01-11)NAS3721

Docker修改容器内部文件的方法一共有三种。

1、进入容器内部修改
使用下面的命令以命令行的形式可以进入容器的内部对文件进行修改。

docker exec -it 容器ID /bin/bash

不过里面没有vim,需要自行安装,安装代码如下所示。不过不推荐这种形式,因为里边的文件是临时的,容器被删除之后,配置就失效了,需要从新配置。

apt-get update
apt-get install vim

2、通过docker cp拷贝进行修改
可以通过下面的代码将需要修改的文件拷贝出来,修改完成之后再拷贝回去。这种方式其实和第一种差不多,只是不用安装vim,但是容器被删除之后,修改过的内容也会失效。而且需要重启容器才能生效(好像)

#将容器中的文件拷贝出来
sudo docker cp 容器ID:/etc/mysql/my.cnf /home/tom/
#将容器中的文件拷贝回去
sudo docker cp /home/tom/my.cnf  容器ID:/etc/mysql/

3、使用-v挂载文件夹(推荐)
最后一种方法是在启动的时候使用-v将容器内部的文件夹挂载(映射)到本地的某个路径下,以后以后可以直接在本地修改,不需要进入容器内部.

#冒号前是本地路径(需要绝对路径),冒号后是容器中的路径
$ sudo docker run -p 8000:3000 --name koaapi2 -v /home/kason/work/docker_demo/:/app -d wxm888/docker_demo_koa

注意启动容器后,虽然文件会同步到容器内,但是不会生效,要停止重启容器。
比如修改了本机的路由,虽然容器内文件会修改,但是请求不到,所以可以觉得在本机开发差不多了再执行挂载文件夹的命令。


扫描二维码推送至手机访问。

版权声明:本文由嘉睿博客发布,如需转载请注明出处。

本文链接:https://tius.cc/?id=56

标签: docker
分享给朋友:

“docker如何修改容器内部文件的方法” 的相关文章

Unraid基于Acme与NginxProxyManager申请免费证书且自动更新并配合内网穿透实现Https安全访问

Unraid基于Acme与NginxProxyManager申请免费证书且自动更新并配合内网穿透实现Https安全访问

     标题虽然有点拗口,但确实是很多爱折腾的朋友需要实现的功能,通过我无数次的构思与实验,终于探索出了一条可行路径,当然,如果你本身已经拥备公网ip,则远远没有如此麻烦,可以看看网上的其它文章,但本文对你依然有帮助,只是不需要其中的一些步骤罢了。好了,言归正传,开启...

快速清理群晖NAS上docker无用的版本文件

快速清理群晖NAS上docker无用的版本文件

     前几天写了一篇文章《在群晖使用Docker安装的容器升级方法》,于是有网友觉得采用我这种办法升级docker容器,系统会留下“垃圾”。那么今天我就教你一招清理docker因升级容器而留下无用的版本文件的方法。1、在电脑上打开SSH软件,我这里使用的是MobaX...

玩PT,在NAS上如何做种子文件

玩PT,在NAS上如何做种子文件

【写作说明】:刚刚开始玩PT,在NAS上有文件想分享,可是如何做种子呢?不会,在电脑上很容易,但在NAS上,常用的qbittorrent是没有生成种子的菜单的,怎么搞呢,难住我了,好不容易在PT贴吧中找到一个方案,结果贴主写的太简单,对新手来说,交代的不够全面,折腾了好几天,总算搞定了,所以,特意发...

修复黑群晖 DSM7.0 + Btrfs 存储空间/磁盘损毁的问题

修复黑群晖 DSM7.0 + Btrfs 存储空间/磁盘损毁的问题

意外断电重启后,发现群晖提示硬盘损毁了,但是实际上硬盘还是正常的,S.M.A.R.T. 状态也良好,但是无法写入数据,系统状态报告为“严重”,群晖的程序也拒绝工作。修复方法1,通过 SSH 直接登录 root 账号。如果不方便直接登录 root,则执行:cd / su...

TrueNAS SCALE中添加 jellyfin电影服务器容器实列

TrueNAS SCALE中添加 jellyfin电影服务器容器实列

教程开始docker版的jellyfin镜像地址是 https://hub.docker.com/r/linuxserver/jellyfin网站提供的参考 cli指令docker run -d \   --name=jellyfin \...

truenas scale部署docker,推荐使用Portainer-ce

truenas scale部署docker,推荐使用Portainer-ce

1,在TrueNAS-SCALE版本 21.08-BETA.2 中,已经不需要修改 daemon.json,可以直接run。2,网络模式推荐使用host,而不是bridge。host更容易内网穿透(emby,transmission,qbittorrent)。bridge虽然译为桥接,但他其实有一层...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。