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

下载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)