docker基础

1. docker基本命令

# 卸载docker
 sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine


# 安装docker
 sudo yum install -y yum-utils
 sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo


# docker-ce:docker的社区版	 
# docker-ce-cli :操作docker服务器的的命令行程序 
# containerd.io: docker容器化的运行环境
sudo yum install docker-ce docker-ce-cli containerd.io

# 运行容器 左边是本机暴露的端口号,右边是映射的容器中的端口号
docker run -itd --name "my-mysql" -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

# 运行容器( -v 用于挂载文件) 并将容器中的文件路径挂载到本地(注意本地路径中要存在 nginx.conf 否则会启动报错,容器会直接将挂载的本地文件当作容器内的配置文件使用)
docker run -d --name "mynginx"  -v /zarek/nginx/html:/usr/share/nginx/html -v /zarek/nginx/conf/nginx.conf:/etc/nginx/nginx.conf  -p 88:80 nginx:latest

# 复制本地的文件到容器
docker cp /zarek/nginx/conf   [CONTAINER ID]:/etc/nginx/nginx.conf
# 复制容器中的文件到本地
docker cp   [CONTAINER ID]:/etc/nginx/nginx.conf     /zarek/nginx/conf   

# 在运行的容器中执行命令
docker exec -it my-mysql mysql -uroot -p123456





# docker 通过容器导出和加载镜像
docker export containId > mysql.tar

# 加载通过容器导出的镜像
docker import mysql < mysql.tar


# docker 通过镜像加载和导出镜像
# docker 加载镜像
docker load --import mysql.tar

# docker 导出镜像
docker save -o mysql.tar mysql:5.7.1

2. Dockerfile的基本运用


以下为 Dockerfile 的内容
# 定制需要的基础镜像
FROM openjdk:8-jdk-alpine
# 定义Dockerfile 元数据
LABEL maintainer=zarek
# 构建参数,只有 docker build 的过程中有效
ARG JAR_FILE
# 将本地路径下的${JAR_FILE}赋值到 app.jar
COPY ${JAR_FILE} app.jar
# 声明端口映射,docker run 随机映射时会映射这个端口
EXPOSE 10086
# 镜像的启动命令
ENTRYPOINT ["java","-jar","/app.jar"]

# docker 构建镜像的命令 --build-arg 后面跟参数 -t 后面跟镜像名 . 为以当前目录作为工作路径
docker build --build-arg JAR_FILE=demo.jar -t imageName -f Dockerfile .

3. 安装一些常用的软件

# redis
docker run -v /data/redis/redis.conf:/etc/redis/redis.conf \
-v /data/redis/data:/data \
-d --name myredis \
-p 6379:6379 \
redis redis-server /etc/redis/redis.conf

4.推送镜像到dockerhub

# 1. 登录 dockerhub
docker login
# 2. 在 dockerhub上创建一个仓库 java-demo:v1.0

# 对镜像重命名
docker tag java-demo:latest zarekzhao/java-demo:v1.0

# 推送镜像到 dockerhub
docker push zarekzhao/java-demo:v1.0

## 拉去镜像
docker pull zarekzhao/java-demo:v1.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值