您的位置:首页 > 运维架构 > Docker

Docker学习笔记常用命令持续整理

2015-05-07 10:15 886 查看
下载lamp镜像: docker pull /tutum/lamp
启动lamp容器
docker run -d -p 8080:80 -p 3306:3306 tutum/lamp #启动应用并映射 8080 端口和 3306 端口
查看docker容器: docker ps
停止容器:
./docker.sh stop goofy_galileo(容器名称)
docker stop kickass_lalande(容器名称)

docker images 命令显示的内容都是本机上存在的资源
cat /var/lib/docker/repositories-devicemapper | python -mjson.tool 本地资源保存的位置
docker build -t scooby_snacks .(这个命令将会在我们指定的位置(例子里是当前文件夹,即”.”)寻找Dockerfile文件,并基于此进行镜像编译。这里的 scooby_snacks 是仓库的名字。)
docker search scooby_snacks
docker run -i -t scooby_snacks /bin/bash 运行新的镜像文件
docker build -t sandy/scooby_snacks . 构建镜像指定用户属性
docker push sandy/scooby_snacks Docker不允许我们直接将镜像发布到根仓库(root repository)下
docker rmi scooby_snacks(仓库名) 删除镜像
启动容器并挂载本机目录到容器中
docker run -v /data/pkg/:/home/pkg/ -name tomcat -p 8080:80 centos:7 /bin/bash
docker run -i -t -v /data/pkg/:/home/pkg -name tomcat -p 8080:80 centos:7 /bin/bash
将建立的容器打包成镜像
docker commit -m "Added jdk" -a "Docker newuser" 0b2616b0e5a8 ouruser/tomcat:v2

其中,
-m
来指定提交的说明信息,跟我们使用的版本控制工具一样;
-a
可以指定更新的用户信息;之后是用来创建镜像的容器的 ID;最后指定目标镜像的仓库名和 tag 信息。创建成功后会返回这个镜像的 ID 信息。
如何进入docker容器
为了连接到容器,需要找到容器的第一个进程的PID。
docker inspect --format "` `.`State`.`Pid `" <container-id>
如:docker inspect --format "` `.`State`.`Pid `" 0e416b3372dd
通过这个PID,你就可以连接到这个容器:
nsenter --target $PID --mount --uts --ipc --net --pid
如:nsenter --target 19430 --mount --uts --ipc --net --pid
rpm -ql docker-io

不通过 docker hub 怎样把 docker image 共享给别人
docker image 是存放在哪个目录的,在不联互联网的情况下,怎样把 docker image 分享给局域网的其他用户?
假设你有一个image叫做ubuntu,那么你可以使用save和load命令来转移image:
在本机执行
sudo docker save -o ubuntu.tar ubuntu
由此得到了 ubuntu.tar 文件,将其拷贝到远程机器,执行
sudo docker load < ubuntu.tar
事就这样成了……

docker commit id name
将 container(id) 提交到 image(name)

docker 上传

> docker tag id docker.io/{username}/{images_name}
> docker push docker.io/{username}/{images_name}
有时候不加 docker.io 会有问题.
docker search tutorial 搜索可用的镜像
docker version 查看docker版本

docker exec -it jenkins bash
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  常用命令 docker