docker第二天: 简单命令使用

常用命令

查看docker进程:

docker ps

查看docker信息:

docker info来查看docker的信息

用docker运行一个nginx服务

docker run -d -p 8080:80 --name webserver nginx
-d 表示在后台进行
-p 表示用docker服务的8080端口,映射到docker容器里面的80端口
--name 给启动的docker容器命名为 webserver

遇到的问题

nginx启动之后,我发现在浏览器通过localhost:8080 访问不到nginx,后面发现,localhost指的是docker服务的ip,而不是mac机器的ip,所以通过docker-machine ssh default连上docker-machine,然后在docker-machine里面执行curl localhost:8080就可以访问到nginx了.
然后通过docker-machine config default可以知道,docker-machine的ip地址为192.168.99.101, 或者通过 docker-machine ip default也可以得到docker主机的ip地址, 所以在mac地址可以通过192.168.99.101:8080访问到nginx

在容器里面执行sh和attach到某一个容器

通过docker exec -it 容器id sh命令可以在指定的容器id上面执行sh命令,或者通过docker attach 容器id去附着到某一个容器进行查看

停止一个容器并且删掉这个镜像

docker stop 容器id
然后再通过docker ps -a查看所有的容器
接着通过docker rm 容器id删除想要删除的容器
最后删除一个镜像docker rmi nginx

创建一个自己的镜像

首先先编写一个Dockerfile文件

FROM ubuntu:14.04
RUN apt-get update
ADD run.sh /
VOLUME /data
CMD ["./run.sh"]

然后执行命令 docker build -t docker-test:lastest - < ./Dockerfile 来根据dockerfile来创建一个镜像

你可能感兴趣的:(docker第二天: 简单命令使用)