文档章节

docker使用笔记

周进
 周进
发布于 2017/10/20 09:18
字数 610
阅读 8
收藏 0
1、搜索镜像
docker search mysql


2、下载镜像
docker pull mysql

3、查看当前的本地的镜像
docker images

4、执行命令
docker run 镜像名 命令
如:
docker run centos /bin/echo 'Hello world'

# 给docker取名字
docker run -name zhoujin_centos centos

# 给docker取名字,并进入到docker容器中,运行指定的一个应用程序:/bin/bash,当这个应用程序退出后,dcoker就退出了
docker run -name zhoujin_centos -it centos /bin/bash


# 使让我在后台自动运行(start)
docker run -d -name zhoujin_centos -it centos /bin/bash


5、查看正在运行的镜像实例
docker ps -a


6、启动docker应用,启动后就自动退出了
docker start 容器id(可通过docker ps -a查看)

7、删除镜像
docker rm 容器id

8、停用docker容器
docker stop 容器id

9、获得容器的PID
docker inspect --format "{{.State.Pid}}" 容器名称

10、获得容器的网络地址
docker inspect --format '{{.NetworkSettings.IPAddress}}' 容器名称

11、进入到指定的容器
docker exec -it 容器名 /bin/bash

12、映射端口
docker run -d -p 81:80 --name mynginx nginx
# 映射多端口
docker run -d -p 81:80 -p 82:443 --name mynginx nginx

13、映射目录
#参数: -v /home/www/wwwroot/mynginx:/usr/share/nginx/html
#参数,自读在后面加:ro: -v /data:/data:ro
docker run -d -p 81:80 -p 82:443 --name mynginx -v /home/www/wwwroot/mynginx:/usr/share/nginx/html nginx

14、查看映射目录的位置
docker inspect --format "{{.Volumes}}" mynginx
docker inspect --format "{{.HostConfig.Binds}}" mynginx



##########################################Docker file使用#############################################

# nginx
#
# 版本
# VERSION 0.1
#
# 基础版本镜像,或是已有的镜像,如:FROM <image>:<tag> 
FROM centos
#
# 作者信息 MAINTAINER <name>
MAINTAINER Joni Zhou
#
# 添加本地资源 ADD,如:ADD <src>... <dest>
ADD nginx-1.13.4.tar.gz /usr/local/src/
ADD pcre-8.41.tar.gz /usr/local/src/
#
# RUN 运行命名:有2种方式:1.RUN 命令;2.RUN [ "echo", "$HOME" ]
RUN yum -y install gcc gcc-c++ make openssl openssl-devel
#
# 切换工作目录 WORKDIR path
WORKDIR /usr/local/src/nginx-1.13.4
RUN ./configure \
 --user=www \
 --group=www \
 --with-pcre=/usr/local/src/pcre-8.41 \
 --prefix=/usr/local/nginx \
 --with-http_ssl_module \
 --with-http_realip_module \
 --with-http_addition_module \
 --with-http_sub_module \
 --with-http_dav_module \
 --with-http_flv_module \
 --with-http_gzip_static_module \
 --with-http_stub_status_module \
 --with-mail \
 --with-mail_ssl_module
RUN make && make install
#
# 开启端口
EXPOSE 80
EXPOSE 443

WORKDIR /root/

# 添加一个启动容器是执行的命令
ADD run.sh /root/run.sh
RUN chmod -v +x /root/run.sh
#
# 启动容器是执行的命令
CMD /root/run.sh

##########################################Docker file使用#############################################


# 根据Dockerfile生成镜像
docker build -t nginx_dockerfile:v1 /Users/hicms/docker-file/nginx

# --privileged 和 /usr/sbin/init 是解决centos7.2的bug,无法启动systemctl的问题
docker run -idt --rm --name my_nginx_dockerfile -p 8881:80 -p 4443:443 -v `pwd`/conf:/usr/local/nginx/conf/ -v `pwd`/wwwroot:/usr/local/nginx/html/ nginx_dockerfile:v1 /bin/bash

docker exec -it my_nginx_dockerfile sh /root/run.sh
docker exec -it my_nginx_dockerfile /bin/bash


 

© 著作权归作者所有

周进
粉丝 16
博文 35
码字总数 5679
作品 0
成都
CTO(技术副总裁)
私信 提问
Docker容器技术 学习笔记汇总

“如果你不出去走走,你就会以为这就是全世界。” 一直在嵌入式领域,这次遇到Docker算是长了见识。刚好公司同事们对这块了解地不多,那就把Docker容器技术的学习梳理成系列笔记,让其他伙伴少...

iotisan
2017/10/20
0
0
Docker Compose笔记 02 安装笔记

我正在学习Docker容器技术,相关笔记汇总在Docker容器技术 学习笔记汇总 在Docker Compose笔记 01 基础介绍中已经介绍了Docker Compose,这节讲讲安装方法,比较简单,都在https://docs.dock...

iotisan
2017/11/16
0
0
Docker 学习笔记合集第一季 —— image container 基本操作

Docker 学习笔记合集第一季 —— image container 基本操作 Docker · chenhengjie123 · 于 1 年前发布 · 最后由 sanlengjingvv 于 1 年前回复 · 2262 次阅读 本帖已被设为精华帖! 学习 ...

小祁1124
2016/11/17
24
0
Docker入门教程 Part 3 Services

前言 本篇笔记是官方Get Started入门教程的Part3 Services,主要演示如何使用 docker-compose.yml 来定义应用服务,docker-compose 可以很方便地对 app 进行调整,并且很容易地实现负载均衡。...

iotisan
2017/10/24
0
0
DeepLearning笔记: 如何在 Docker 里切换 Python 版本

在 DeepLearning-1:神经网络和 Docker 入门 一文中,我们介绍了 Docker 环境的安装和使用。 然后,00 遇到了 Python 的经典问题:Python 2 还是 Python 3?TensorFlow image 默认安装的是 ...

Kidult
2018/01/14
0
0

没有更多内容

加载失败,请刷新页面

加载更多

JS其他类型值转化为Boolean类型规则

本文转载于:专业的前端网站➤JS其他类型值转化为Boolean类型规则 由于最近在笔试的时候,发现好多关于其他类型转化为Boolean类型的题目,因此总结一下! 一、String类型转化为Boolean 1.转化...

前端老手
9分钟前
2
0
EurekaClient自动装配及启动流程解析

在上篇文章中,我们简单介绍了EurekaServer自动装配及启动流程解析,本篇文章则继续研究EurekaClient的相关代码 老规矩,先看spring.factories文件,其中引入了一个配置类EurekaDiscoveryClie...

Java学习录
15分钟前
2
0
析构函数是否必须为虚函数?为何?

在C++中,基类指针可以指向一个派生类的对象。如果基类的析构函数不是虚函数,当需要delete这个指向派生类的基类指针时,就只会调用基类的析构函数,而派生类的析构函数无法被调用。容易造成...

天王盖地虎626
16分钟前
2
0
【TencentOS tiny】深度源码分析(7)——事件

引言 大家在裸机编程中很可能经常用到flag这种变量,用来标志一下某个事件的发生,然后在循环中判断这些标志是否发生,如果是等待多个事件的话,还可能会if((xxx_flag)&&(xxx_flag))这样子做...

杰杰1号
19分钟前
2
0
聊聊nacos client的ServerHttpAgent

序 本文主要研究一下nacos client的ServerHttpAgent HttpAgent nacos-1.1.3/client/src/main/java/com/alibaba/nacos/client/config/http/HttpAgent.java public interface HttpAgent { ......

go4it
25分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部