docker常见操作
1.构建镜像:docker build -t 文件名 .(-t是给镜像命名,.是基于当前目录的dockerfile来构建镜像) 2.运行容器:docker run -d -p 3000:80 --name docker-vue docker-demo-vue
- -d 设置容器在后台运行
- -p 表示端口映射,把本机的 3000 端口映射到 container 的 80 端口(这样外网就能通过本机的 3000 端口访问了。
- --name 设置容器名 docker-vue
- docker-demo-vue 是我们上面构建的镜像名字
3.进入容器:curl -v -i localhost:3000
如何进入docker容器进行调试:
$ docker exec -it <container_name>
使用 docker 启动 nginx 容器,并在本地浏览器某端口可直接打开
如何得知启动nginx命令的ip端口
docker port
了解 docker 原理,如何模拟 docker 隔离环境及限制资源
docker底层使用了linux的一些内核,大概有namespace、cgroups和ufs 使用linux namespace构建隔离环境。由以下组成:
pid
: 隔离进程net
: 隔离网络ipc
: 隔离 IPCmnt
: 隔离文件系统挂载uts
: 隔离hostnameuser
: 隔离uid/gid
Dockerfile、Image、Container 有何区别
dockerfile构建配置文件镜像 image:文件和meta data的集合;分层的,并且每一层都可以添加改变删除文件,成为一个新的image;不同的image可以共享相同的layer;Image本身是read-only的 Container:通过Image创建( copy );在Imagelayer之上建立一个containerlayer(可读写);Image负责app的存储和分发,Container负责运行app
Dockerfile 中 CMD 与 RUN 有何区别
CMD指定容器如何启动 RUN在镜像中执行命令,