如何进入Docker容器内部及拷贝文件到容器内部

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 如何进入Docker容器内部

我们使用的容器都说是通过后台方式运行的,需要进入容器,修改一些配置

方式一

命令

docker exec -it 容器id /bin/bash

进入容器

docker exec -it 10e1734c72f9 /bin/bash
[root@10e1734c72f9 /]# ps -ef
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 05:30 pts/0 00:00:00 /bin/bash
root 15 0 0 05:46 pts/1 00:00:00 /bin/bash
root 30 15 0 05:46 pts/1 00:00:00 ps -ef
[root@10e1734c72f9 /]#

方式二

docker attach 容器id
docker attach 10e1734c72f9
进去正在执行的代码

docker exec #进入容器开启一个新的终端,可以在里面操作

docker attach # 进入容器正在执行的终端,不会启动新的进程

从容器拷贝文件到主机

docker cp 容器id:容器内的路径 目的主机路径
 docker attach a7d2a39a090d # 进入容器
[root@a7d2a39a090d /]# cd /home
[root@a7d2a39a090d home]# touch test.java # 在容器创建文件
[root@a7d2a39a090d home]# exit
exit
[root@root home]# docker ps
CONTAINER ID   IMAGE     COMMAND   CREATED   STATUS    PORTS     NAMES
[root@root home]# docker ps -a
CONTAINER ID   IMAGE     COMMAND       CREATED          STATUS                      PORTS     NAMES
a7d2a39a090d   centos    "/bin/bash"   23 minutes ago   Exited (0) 27 seconds ago             beautiful_wing
b882b346af41   centos    "/bin/bash"   23 minutes ago   Exited (0) 23 minutes ago             serene_montalcini
10e1734c72f9   centos    "/bin/bash"   25 minutes ago   Exited (0) 2 minutes ago              bold_shockley
6025f5cf7605   centos    "/bin/bash"   50 minutes ago   Exited (0) 50 minutes ago             competent_moser

[root@root home]# docker cp a7d2a39a090d:/home/test.java /home # 拷贝容器文件到主机
[root@root home]# ls
stevezhao.java  test.java
AI 代码解读
目录
打赏
0
0
0
0
4
分享
相关文章
Docker网关冲突导致容器启动网络异常解决方案
当执行`docker-compose up`命令时,服务器网络可能因Docker创建新网桥导致IP段冲突而中断。原因是Docker默认的docker0网卡(172.17.0.1/16)与宿主机网络地址段重叠,引发路由异常。解决方法为修改docker0地址段,通过配置`/etc/docker/daemon.json`调整为非冲突段(如192.168.200.1/24),并重启服务。同时,在`docker-compose.yml`中指定网络模式为`bridge`,最后通过检查docker0地址、网络接口列表及测试容器启动验证修复效果。
【赵渝强老师】数据库不适合Docker容器化部署的原因
本文介绍了在Docker中部署MySQL数据库并实现数据持久化的方法,同时分析了数据库不适合容器化的原因。通过具体步骤演示如何拉取镜像、创建持久化目录及启动容器,确保数据安全存储。然而,由于数据安全性、硬件资源争用、网络带宽限制及额外隔离层等问题,数据库服务并不完全适合Docker容器化部署。文中还提到数据库一旦部署通常无需频繁升级,与Docker易于重构和重新部署的特点不符。
209 18
【赵渝强老师】数据库不适合Docker容器化部署的原因
在Docker容器中部署GitLab服务器的步骤(面向Ubuntu 16.04)
现在,你已经成功地在Docker上部署了GitLab。这就是我们在星际中的壮举,轻松如同土豆一样简单!星际旅行结束,靠岸,打开舱门,迎接全新的代码时代。Prepare to code, astronaut!
94 12
Docker Compose--模板文件
Docker Compose--模板文件
193 29
获取Docker基础使用方法:让容器化变得轻松。
对于Docker的初学者来说,了解这些基础知识点就足够了。实践是最好的老师,越是动手操作,对Docker的理解会越深。祝阅读这篇文章的开发者们一切顺利,愿你在Docker的海洋中航行顺利!
111 17
Docker容器的实战讲解
这只是Docker的冰山一角,但是我希望这个简单的例子能帮助你理解Docker的基本概念和使用方法。Docker是一个强大的工具,它可以帮助你更有效地开发、部署和运行应用。
155 27
大模型文件Docker镜像化部署技术详解
大模型文件Docker镜像化部署技术详解
502 2
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
222 30
容器技术实践:在Ubuntu上使用Docker安装MySQL的步骤。
通过以上的操作,你已经步入了Docker和MySQL的世界,享受了容器技术给你带来的便利。这个旅程中你可能会遇到各种挑战,但是只要你沿着我们划定的路线行进,你就一定可以达到目的地。这就是Ubuntu、Docker和MySQL的灵魂所在,它们为你开辟了一条通往新探索的道路,带你亲身感受到了技术的力量。欢迎在Ubuntu的广阔大海中探索,用Docker技术引领你的航行,随时准备感受新技术带来的震撼和乐趣。
195 16
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问