1. 查询github上的镜像
docker search sybase
讯享网
2. 下载
讯享网docker pull ifnazar/sybase_15_7
3. 删除镜像
docker rmi -f runoob/ubuntu:v4
4. 查看所有镜像
讯享网docker images
5. 使用镜像
docker run 镜像名称
6. 更新镜像
讯享网docker run -t -i ubuntu:15.10 /bin/bash
7. 设置镜像标签
docker tag 860c279d2fec runoob/centos:dev
8.运行进入
讯享网 docker run --privileged -h zy01 --name sybase -it ifnazar/sybase_15_7 --restart=always /bin/bash --privileged:使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。 -h:指定容器主机名 --name:指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字 -i:打开STDIN,用于控制台交互 -t: 分配tty设备,该可以支持终端登录,默认为false --restart=always:指定容器停止后的重启策略
9. 退出容器
exit
10. 进入容器(首先要判断是否启动容器,如果未启动请先启动容器在进入)
讯享网docker exec -it sybase /bin/bash
11 启动容器设置IP端口
docker run -p 5000:5000 --name sybase -it ifnazar/sybase_15_7 /bin/bash
12. 启动容器
讯享网docker start sybase
13. 停止容器
docker stop sybase
14. 查看容器IP
讯享网进入容器 cat /etc/hosts
15. 删除某个容器,若正在运行,需要先停止
[root@localhost ~]# docker rm yufei_01 Error response from daemon: You cannot remove a running container 2d48fc5b7c17b01e6247cbc0faf1e54f24651d5e16d6db4e15f92d33. Stop the container before attempting removal or use -f [root@localhost ~]# docker stop yufei_01 yufei_01 [root@localhost ~]# docker rm yufei_01 yufei_01 [root@localhost ~]#
16. 删除所有容器
讯享网[root@localhost ~]# docker rm $(docker ps -a -q) Error response from daemon: You cannot remove a running container 724e7701f0d4ae21f75ba0e408fd6cce96f69cba11. Stop the container before attempting removal or use -f Error response from daemon: You cannot remove a running container fee36f9d2ee56afbdcca0eeb8b63e5590ddf18c0c42954c93b9f06. Stop the container before attempting removal or use -f [root@localhost ~]# [root@localhost ~]# [root@localhost ~]# docker stop yufei_6 yufei_6 [root@localhost ~]# docker stop yufei_5 yufei_5 [root@localhost ~]# docker rm $(docker ps -a -q) 724e7701f0d4 fe [root@localhost ~]#
17. 保存导出镜像
docker save -o /mnt/ftp.tar fauria/vsftpd
18. 导入镜像包
讯享网docker load -i ftp.tar
19. 查看所有容器
docker ps -a
20. 修改容器名字
讯享网docker rename <my_container> <my_new_container>
21. 将现有容器封装为镜像
docker commit vstelnet telnet/v0.1
22. 查看docker现有容器镜像性能状态
讯享网docker stats -a
23. 宿主机与容器之间的拷贝
docker cp cowrie/ vsssh:/mnt docker cp vsssh:/mnt cowrie/
24. 设置共享文件夹
讯享网PS D:\docker> docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 49f7960eb7e4 2 months ago 200MB PS D:\docker> docker run -v d:/docker/data:/data centos ls /data test.txt
-v:挂载共享磁盘,其中d:/docker/data表示宿主机的目录,冒号后面的/data表示虚拟机中的挂载点。这个挂载点会由docker容器自动创建,无须已存在。
25. 宿主机执行docker内容器命令
docker exec -it ftp /bin/bash -c 'python servers.py -e start -l ftp.log -w log -s ftp -i 00001'
26. 运行dockerfile文件
讯享网docker build -t scanner:v1 . # -t: 名字和可选的标签(Name:tag) # .: 表示从当前路径使用Dockerfile
27. docker删除所有none镜像
docker rmi `docker images | grep '<none>' | awk '{print $3}'`
28. 查看容器IP地址
我们可以通过以下命令查看容器运行的各种数据:
讯享网docker inspect mycentos2
也可以直接执行下面的命令直接输出IP地址:
docker inspect --format='{
{.NetworkSettings.IPAddress}}' mycentos2
29. 查看容器日志
讯享网#docker logs 可以查看日志 docker logs 容器名/id 排错
例如访问http://47.106.176.37:88/asdfasdf,出现404错误:

查看日志:
Docker run 参数详解
命令格式:docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
Usage: Run a command in a new container
中文意思为:通过run命令创建一个新的容器(container)
- 常用选项说明
-d, --detach=false, 指定容器运行于前台还是后台,默认为false-i, --interactive=false, 打开STDIN,用于控制台交互-t, --tty=false, 分配tty设备,该可以支持终端登录,默认为false-u, --user="", 指定容器的用户-a, --attach=[], 登录容器(必须是以docker run -d启动的容器)-w, --workdir="", 指定容器的工作目录-c, --cpu-shares=0, 设置容器CPU权重,在CPU共享场景使用-e, --env=[], 指定环境变量,容器中可以使用该环境变量-m, --memory="", 指定容器的内存上限-P, --publish-all=false, 指定容器暴露的端口-p, --publish=[], 指定容器暴露的端口-h, --hostname="", 指定容器的主机名-v, --volume=[], 给容器挂载存储卷,挂载到容器的某个目录--volumes-from=[], 给容器挂载其他容器上的卷,挂载到容器的某个目录--cap-add=[], 添加权限,权限清单详见:capabilities(7): overview of capabilities - Linux man page--cap-drop=[], 删除权限,权限清单详见:capabilities(7): overview of capabilities - Linux man page--cidfile="", 运行容器后,在指定文件中写入容器PID值,一种典型的监控系统用法--cpuset="", 设置容器可以使用哪些CPU,此参数可以用来容器独占CPU--device=[], 添加主机设备给容器,相当于设备直通--dns=[], 指定容器的dns服务器--dns-search=[], 指定容器的dns搜索域名,写入到容器的/etc/resolv.conf文件--entrypoint="", 覆盖image的入口点--env-file=[], 指定环境变量文件,文件格式为每行一个环境变量--expose=[], 指定容器暴露的端口,即修改镜像的暴露端口--link=[], 指定容器间的关联,使用其他容器的IP、env等信息--lxc-conf=[], 指定容器的配置文件,只有在指定--exec-driver=lxc时使用--name="", 指定容器名字,后续可以通过名字进行容器管理,links特性需要使用名字--net="bridge", 容器网络设置:- bridge 使用docker daemon指定的网桥
- host //容器使用主机的网络
- container:NAME_or_ID >//使用其他容器的网路,共享IP和PORT等网络资源
- none 容器使用自己的网络(类似--net=bridge),但是不进行配置
--privileged=false, 指定容器是否为特权容器,特权容器拥有所有的capabilities--restart="no", 指定容器停止后的重启策略:- no:容器退出时不重启
- on-failure:容器故障退出(返回值非零)时重启
- always:容器退出时总是重启
--rm=false, 指定容器停止后自动删除容器(不支持以docker run -d启动的容器)--sig-proxy=true, 设置由代理接受并处理信号,但是SIGCHLD、SIGSTOP和SIGKILL不能被代理
示例
- 运行一个在后台执行的容器,同时,还能用控制台管理:
docker run -i -t -d ubuntu:latest - 运行一个带命令在后台不断执行的容器,不直接展示容器内部信息:
docker run -d ubuntu:latest ping www.docker.com - 运行一个在后台不断执行的容器,同时带有命令,程序被终止后还能重启继续跑,还能用控制台管理,
docker run -d --restart=always ubuntu:latest ping www.docker.com - 为容器指定一个名字,
docker run -d --name=ubuntu_server ubuntu:latest - 容器暴露80端口,并指定宿主机80端口与其通信(: 之前是宿主机端口,之后是容器需暴露的端口),
docker run -d --name=ubuntu_server -p 80:80 ubuntu:latest - 指定容器内目录与宿主机目录共享(: 之前是宿主机文件夹,之后是容器需共享的文件夹),
docker run -d --name=ubuntu_server -v /etc/www:/var/www ubuntu:latest

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/13213.html