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

Docker命令相关

2016-02-15 08:43 691 查看

docker命令

docker run IMAGE(启动容器所使用的镜像) COMMAND(容器启动后运行的命令) ARG(参数)
docker run -i -t IMAGE /bin/bash -i --interactive=true|false 默认是false 为容器始终打开标准输入
-t --tty=true|false 默认是false 为容易分配一个伪终端
Ctrl+p Ctrl+q退出交互式终端
-d 以后台形式运行命令
docker ps [-a] [-l] 查看容器 -a列出所有的容器 -l列出最新创建的一个容器
docker inspect 查看建立的容器详细信息|或镜像的详细信息
docker run --name=自定义名字 -i -t IMAGE /bin/base
docker start -i --name 重新启动暂停容器
docker rm 容器 删除容器
docker attach Id|name 重新进入交互式终端
exit; 退出容器 ,结束容器
docker inspect --name 查看容器信息
docker logs [-f] [-t] [--tail]
-f --follows=true|false 默认为false 跟踪日志的变化并返回结果
-t --timestamps=true|false 在返回的结果上加时间戳
-tail= "all" 返回结尾处多少数量的日志

docker top 容器名 查看容器中进程情况
docker exec [-d] [-i] [-t] 容器名 COMMAND(容器启动后运行的命令) ARG(参数)
docker stop 容器名 发送命令,等待容器停止
docker kill 容器名 直接停止容器
docker images [options] [repository]
-a --all= false 显示所有镜像,默认是不显示中间层的镜像
-f --filter=[] 过滤条件
--no-trunc=false 截断唯一ID
-q,--quiet=false 只显示唯一ID
docker search options term
--automated=false 选定后为自动化创建的docker镜像
--no-trunc=false 是否截断
-s,--stars=0 选中结果的最低星级

docker commit options CONTAINER [REPOSITORY[:TAG]]
-a,--anthor="" 作者
-m,--message="" 信息
-p,--pause=true commit时是否暂停运行的容器
docker -d

DockerFile命令

FROM image|image:tag 已经存在的镜像 必须为第一条非注释指令

MAINTAINER 指定镜像的作者信息,包含镜像的所有者和联系信息

RUN 指定当前镜像中运行的命令 shell模式 exec模式

EXPOSE 运行该镜像的 容器使用的端口

CMD ["executable","param1","param2"] (exec模式)

CMD command param1 param2(shell模式)

ENTERYPOINT ["executable","param1","param2"] (exec模式)

ENTERYPOINT command param1 param2(shell模式)

CMD 与 ENTERYPOINT 区别为是否会被docker run命令所覆盖

ADD <src> ... <desc>

ADD ["<src>" ... "<desc>"] 适用于文件路径中有空格的情况

COPY <src> ... <desc>

COPY ["<src>" ... "<desc>"] 适用于文件路径中有空格的情况

ADD 与 COPY 区别为 ADD包含类似tar的解压功能 如果单纯复制文件,Docker推荐使用COPY

VOLUMN 卷

WORKDIR 指定工作目录

ENV 设置环境变量

USER daemon 基于什么用户来运行 USER user USER uid USER user:group USER uid:gid USER user:gid USER uid:group 默认root

ONBUILD 镜像触发器 当一个镜像被其他镜像作为基础镜像时执行

DOCKER 附加桌面

1.下载rogaha/docker-desktop docker build -t rogaha/docker-desktop

2.CONTAINER_ID=$(docker run -d -P rogaha/docker-desktop)

3.获得密码:echo $(docker logs $CONTAINER_ID | sed -n 1p)

4.设置与本机端口docker
port $CONTAINER_ID 22

5.ssh
docker@主机ip -p port "sh -c './docker-desktop -s 800x600 -d 10 > /dev/null 2>&1 &'" 设置ssh登录

6.xpra
--ssh="ssh -p 主机端口" attach ssh:docker@主机ip:10

一个mysql的dockerfile

#version 1.0
FROM ubuntu
MAINTAINER sunpeng/mysql
WORKDIR /root/
RUN apt-get install -y libaio-dev
RUN cd
ADD mysql56 /usr/lib/mysql
RUN groupadd mysql
RUN useradd -r -g mysql mysql
RUN /usr/lib/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/lib/mysql --datadir=/usr/lib/mysql/data
RUN cp /usr/lib/mysql/support-files/mysql.server /etc/init.d/mysql
RUN service mysql start
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: