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

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

ym02302年前 (2024-01-11)NAS3667

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如何修改容器内部文件的方法” 的相关文章

在群晖使用Docker安装的容器升级方法

在群晖使用Docker安装的容器升级方法

       群晖NAS除了可以安装群晖自家的套件以外,还支持在Docker安装第三方的容器,那么问题来了,安装好容器怎样无损升级?你以为容器升级是先把安装好的容器删除然后再重新下载安装?其实没有那么复杂:1、打开群晖Docker,在左边映像菜单,以博主安装的...

解决 Docker 安装 Jellyfin 封面图和部分中文字幕变方块

解决 Docker 安装 Jellyfin 封面图和部分中文字幕变方块

如果你在 Docker 中安装 Jellyfin,很可能遇到下面这种情况:(封面图里的中文字变方块)(ASS字幕里的中文字变方块)下面来解决。在容器中安装中文字体进入容器的 bash,依次输入以下命令:apt update  apt install font...

UNRAID安装配置nginx proxy manager反向代理

UNRAID安装配置nginx proxy manager反向代理

如果你配置在unraid上的某个docker需要https连接,那反向代理很适合你。unraid要实现反代只要一个简单的docker就行了,那就是nginx proxy manager(下称NPM)#需要的材料一个域名,并且最好托管在阿里云或者腾讯(DNSPOD),以方便NPM申请证书。#安装unr...

修复黑群晖 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 \...

处理群晖NAS中的烦人@eaDir文件夹

处理群晖NAS中的烦人@eaDir文件夹

     NAS文件夹里面有很多@eaDir文件夹,和Mac OS X里的.DS_Store类似,很烦人。找了解决方法:0.0 ssh登录群晖控制面板里面打开SSH0.1 Windows或者Mac,用 ssh 用户名@NAS IP地址登录1. 删除所有@eaDir文件夹...

发表评论

访客

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