Docker 中常用的一些命令

创建容器常用的参数说明:
创建容器命令:
docker run
-i : 表示运行容器
-t : 表示容器启动之后会进入命令行,加入这两个参数后,容器就能登录进去,即分配一个伪终端。
–name: 为创建的容器命名

例如:docker run -it --name=容器名称 镜像名称:版本(tag) /bin/bash

-v :标识目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个-v做多个目录或者文件的映射
注意:最好做目录映射,在宿主机上做修改,然后共享到容器上。
-d : 在run后面加上-d参数,则会创建一个守护容器在后台运行(这样创建容器后不会自动登录容器,如果只加了-i -t 两个参数,创建后会直接进入容器)
-p : 表示端口映射,格式为 宿主机映射端口:容器运行端口,前者是宿主机的端口,后者是容器的端口,可以使用多个-p 做多个端口的映射
-e : 代表添加环境变量 MYSQL_ROOT_PASSWORD 是root用户的登录密码

例:docker run -di --name=tensquare_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

登录守护式容器方式:
docker exec -it 容器名称 (或者容器ID) /bin/bash
让docker开机启动:

systemctl enable docker

查询docker运行状态:

systemctl status docker

查看docker中所有的镜像文件:

docker images

从远程仓库搜索一个镜像:

docker search mysql

从远端拉取一个镜像:

docker pull mysql:5.7 

查看正在运行的容器:

docker ps

查看所有的容器:

docker ps -a

查看最近创建的容器:

docker ps -l

根据条件过滤显示的内容

docker ps -f status=exited

后台创建启动mysql容器:

docker run -di --name=mysql57 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root  mysql:5.7

登录守护者线程

docker exec -it mysql /bin/bash

查看docker容器的详细情况

docker inspect mysql57

指定IP地址返回值

docker inspect --format='{{.NetworkSettings.IPAddress}}' mysql57

docker安装redis

docker run -di --name=myredis -p 6379:6379 redis

docker安装ngnix

docker run -di --name=mynginx -p 80:80 nginx

docker安装tomcat

docker run -di --name=mytomcat -p 8080:8080 -v /usr/local/webapps:/usr/local/tomcat/webapps tomcat

docker安装jdk使用Dockerfile
创建并进入目录

cd /usr/local/dockerjdk8

创建Dockerfile文件,内容如下:

#依赖镜像名称和ID
FROM centos:7
#指定镜像创建者信息
MAINTAINER SHANG
#切换工作目录
WORKDIR /usr
RUN mkdir /usr/local/java
#ADD 是相对路径jar,把java添加到容器中
ADD jdk-8u231-linux-x64.tar.gz /usr/local/java/
#配置java环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_231
ENV JRE_HOME $JAVA_HOME/jre
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib:$CLASSPATH
ENV PATH $JAVA_HOME/bin:$PATH

执行命令构建镜像

docker build -t='jdk1.8' .

启动docker镜像

docker run -di --name=jdk18 jdk1.8

docker创建远程私服

docker pull registry

启动私有仓库

docker run -di --name=registry -p 5000:5000 registry

修改daemon.json

vi /etc/docker/daemon.json

添加如下内容,保存退出

{"insecure-registries":["49.234.52.245:5000"]}

重启docker服务

systemctl restart docker

标记此镜像为私有仓库的镜像

docker tag jdk1.8  49.234.52.245:5000/jdk1.8

向远程私服推送镜像

docker push  49.234.52.245:5000/jdk1.8

导入和导出容器:
如果要导出本地的某个容器,可以使用docker export命令

docker export  NAME/ID  > fileName.tar

可以使用 docker import 从容器快照文件中再导入为镜像,以下实例将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1:

cat docker/ubuntu.tar | docker import - test/ubuntu:v1

也可以通过指定 URL 或者某个目录来导入,例如:

$ docker import http://example.com/exampleimage.tgz example/imagerepo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值