Docker学习记录
docker: failed to connect to the docker API at unix:///Users/triumph/.docker/run/docker.sock; check if the path is correct and if the daemon is running: dial unix /Users/triumph/.docker/run/docker.sock: connect: no such file or directory
Run ‘docker run --help’ for more information

Unable to find image ‘ubuntu:15.10’ locally
docker: Error response from daemon: failed to resolve reference “docker.io/library/ubuntu:15.10”: failed to do request: Head “https://registry-1.docker.io/v2/library/ubuntu/manifests/15.10”: EOF


docker rmi -f ubuntu:15.10//彻底删除镜像而不是删除容器(因为命令里面有一个i)
#删除容器的命令
docker rm -f 容器
# 查看正在运行的容器
docker ps
# 查看所有容器(包括已停止的)
docker ps -a
docker stop 容器ID/容器名字 #都可以停止容器
为什么每次使用docker run都会创建一个新的实例
简单来说:因为 docker run 的设计初衷就是“从蓝图启动一个全新的、隔离的实例”。
如果您再次 docker run,您肯定不希望进入一个已经被修改过的、充满之前实验痕迹的环境。
每次创建新实例保证了环境的纯净和隔离,避免了依赖冲突和配置污染。
如果您想「重复进入」同一个容器,应该怎么做?
# 1. 启动一个已存在的、处于停止状态的容器
docker start <容器名或ID>
# 2. 然后附加到它的终端进行交互
docker attach <容器名或ID>
# 或者将上面两步合二为一:
docker start -ai <容器名或ID>
下面图片的意思是创建一个新的容器,进入里面在内部进行交互

总结当我们想和以前容器的终端进行操作
docker pull postgres:latest(先拉取镜像,后面才能开启镜像)
- docker run -i -t ubuntu:22.04 /bin/bash(开启一个终端,并进行交互)
- docker start -ai 240a9b0b853e (以后再进入这个容器内的时候就可以直接用了)
- 或者你启动了容器后,docker attach 容器ID/容器名字
1.挂载
在 Docker 中,挂载(Mounting) 的本质和操作系统是一样的,但目的更具体:把宿主机(你的电脑或服务器)上的文件或文件夹,连接到容器内部的一个目录,让容器能读写宿主机上的数据。实现数据持久化。
docker run -d \
--name timescaledb \ \\需要注意一下的事情相当于是给当前的容器命名
-v /home/cm3d/timescaleData:/home/postgres/pgdata/data \
-e POSTGRES_PASSWORD=mysecret \
-p 5432:5432 \
-v /home/cm3d/timescaleData:/home/postgres/pgdata/data
↑ ↑
宿主机路径 容器内路径
(source) (target)
Docker 容器是一个隔离的虚拟环境,容器里的文件默认都存在容器内部虚拟磁盘,一旦容器被删除,里面所有数据库、日志数据会全部消失。
-v A:B 挂载就是打通宿主机(你的服务器)和容器内部的目录通道:
A:宿主机真实路径(服务器硬盘上的文件夹 / 文件)
B:容器内部访问的路径
容器读写 B 里的文件,实际操作的是服务器硬盘上 A 的文件,实现数据持久化、文件共享、时区同步。
2.docker start -ai container 为什么进入linux容器的shell,进入不了数据库的shell
- 数据库容器的主进程是数据库服务本身,而不是 shell。docker start -ai 会附加到容器的主进程(通常是
MySQL、PostgreSQL 等数据库程序) - docker exec -it 3d7e767f33d9(镜像的ID或者就是镜像的名字)/bin/sh 使用这个可以
这个命令是进入已经存在的容器,不是拉取新镜像。
docker-compose.yaml
更多推荐


所有评论(0)