Linux安装docker及docker的基本操作总结
本篇文章给大家带来了关于linux上怎样安装docker以及docker的基本操作,希望对大家有帮助。
一.安装docker
Docker要求运行在Centos 7上,要求系统为64位,系统内核版本3.10以上
1.uname -an 查看当前系统版本
2.yum -y install docker 下载安装docker
3.service docker start 启动docker服务
4.docker version 检查docker是否安装成功
当看到下图的信息,就是表示本机docker已经安装成功,很简单
二.镜像操作
创建容器要以镜像为基础,所以先讲下docker镜像的操作
搜索镜像
docker images ll 查看下本机的是否已经有了镜像
目前机器里还没有镜像,去Docker Hub下载(镜像还可自定义,这里就不细说了)
docker search java ,还能指定具体的版本进行下载,
例如:docker search Ubuntu:1.2.5.4,可以进行搜docker Hub 会列出很多镜像
下载镜像
docker pull docker.io/nginx 进行下载
下载到本地的镜像要比docker Hub上搜索出来的要大,因为下载过程中自动解压了,在查看镜像列表就有了刚才下载的镜像
列表包含了仓库名,版本标签,镜像ID,创建时间以及所占用的空间
删除镜像
删除没用的镜像docker rmi镜像id
三.镜像的创建与管理
前边我们已经下载好了Nginx的镜像,接下来我们就创建一个只有Nginx应用的容器docker run -i -t
docker run -idt --name container_nginx -p 8080:80 docker.io/nginx
启动一个使用镜像docker.io/nginx,名字container_nginx的容器,-p 8080:80表示将容器的80端口映射到主机的8080端口,这样我们只要访问主机的8080端口就可以访问到容器的服务了。
注意:name前面是两个-, 端口前面有-p, docker.io/nginx是镜像名,8080是主机的端口,80是Nginx应用的端口
主机上的一个端口只能映射一个容器端口,不可以多个容器端口对应一个主机端口(如果容器安装的centos类的系统,那么容器端口随便设定,但如果容器内只是单纯的应用,那么容器端口要是应用自身的端口)
这样我们就创建并启动了一个容器!
exit 退出容器 docker ps 查看运行中的容器 docker ps -a 查看运行中和非运行中的所有容器 docker exec -it container_nginx /bin/bash 进入容器 如果容器还未启动 执行docker start container_nginx
进入容器后启动Nginx
whereis nginx 找Nginx的启动目录 [root@iz2zehzeir87zi8q99krk1z ~]# docker start container_nginx container_nginx [root@iz2zehzeir87zi8q99krk1z ~]# docker exec -it container_nginx /bin/bash root@84683e425116:/# whereis nginx nginx: /usr/sbin/nginx /usr/lib/nginx /etc/nginx /usr/share/nginx root@84683e425116:/# /usr/sbin/nginx
此时在浏览器访问 http://51.110.218.9:8080/ 就可以直接访问容器内的Nginx
如果访问不成功,可能是主机端口的防火墙开着,执行下边的命令关闭
/ sbin / iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
由于我用的阿里云服务器,所以需要在阿里云把8080端口开放
删除容器
容器删除之前先将容器停止 docker stop container_nginx 或者是容器的id docker rm -f container_nginx 容器删除
docker start 与 docker run 的区别
docker start name 启动一个已经创建的容器 docker run 创建并启动一个容器
docker run 命令其实是 docker create 和 docker start 的命令组合,先执行docker create 创建一个容器 再接着docker start启动
主机和容器文件相互复制
从主机复制到容器 sudo docker cp host_path containerID:container_path 从容器复制到主机 sudo docker cp containerID:container_path host_path
请注意,以上这两个命令都是在主机中执行的,不能再容器中执行
docker cp container_nginx:/usr/local/xin.txt /usr/local/software/ 容器向主机复制文件
docker cp /usr/local/xinzhifu.txt container_nginx:/usr/local/ 主机向容器复制文件
这样一个基础的docker容器就创建完了 。。。。。。。。。。。。
反过来大家再看一看docker的容器与镜像的区别 https://www.cnblogs.com/linjiaxin/p/7381421.html
那么其实镜像与容器的本质区别并不大,那么镜像可以生成容器 ,容器是否可以做成镜像呢?
docket commit container_nginx image_nginx:v1 容器名 自己起一个镜像的名字:版本号
用当前的容器生成了redis镜像
例如:A、B两台机器都想安装redis,A机器上创建容器并在容器中做好redis的一切配置,让后将这个容器docker commit 成镜像image_redis,B机器也想要安装redis,直接用镜像image_redis创建容器就行了,docker就是做这样一劳永逸的事情。
而且传统方式得在每台机器上安装配置redis非常麻烦
四.镜像的导入与导出
镜像压缩打包 (主机上进行操作),有两种方式 docker save 与 docker load 和 docker export 与 docker import
docker save nginx | gzip > nginx_xin_image.tar.gz 将现有的镜像压缩打包 docker load -i nginx_xin_image.tar.gz 压缩的镜像解压 docker images 进行查看
docker save 是直接将镜像进行打包 docker save <镜像名>或<镜像id>
docker export container_nginx> nginx_image.tar cat nginx_image.tar | sudo docker import - nginx_image:import
docker export 是直接将容器进行打包 docker save <容器名>或<容器id>
需要注意两种方法配套的,切不可混用。虽然导入导出时没问题,但是在创建容器时候会报错
如果使用import导入save产生的文件,虽然导入不提示错误,但是启动容器时会提示失败,
会出现类似"docker: Error response from daemon: Container command not found or does not exist"的错误。
类似,使用load载入export产生的文件,也会出现问题。
相关推荐:《Linux视频教程》
以上是Linux安装docker及docker的基本操作总结的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

VS Code 系统要求:操作系统:Windows 10 及以上、macOS 10.12 及以上、Linux 发行版处理器:最低 1.6 GHz,推荐 2.0 GHz 及以上内存:最低 512 MB,推荐 4 GB 及以上存储空间:最低 250 MB,推荐 1 GB 及以上其他要求:稳定网络连接,Xorg/Wayland(Linux)

VS Code扩展安装失败的原因可能包括:网络不稳定、权限不足、系统兼容性问题、VS Code版本过旧、杀毒软件或防火墙干扰。通过检查网络连接、权限、日志文件、更新VS Code、禁用安全软件以及重启VS Code或计算机,可以逐步排查和解决问题。

虽然 Notepad 无法直接运行 Java 代码,但可以通过借助其他工具实现:使用命令行编译器 (javac) 编译代码,生成字节码文件 (filename.class)。使用 Java 解释器 (java) 解释字节码,执行代码并输出结果。

VS Code 全称 Visual Studio Code,是一个由微软开发的免费开源跨平台代码编辑器和开发环境。它支持广泛的编程语言,提供语法高亮、代码自动补全、代码片段和智能提示等功能以提高开发效率。通过丰富的扩展生态系统,用户可以针对特定需求和语言添加扩展程序,例如调试器、代码格式化工具和 Git 集成。VS Code 还包含直观的调试器,有助于快速查找和解决代码中的 bug。

VS Code 可以在 Mac 上使用。它具有强大的扩展功能、Git 集成、终端和调试器,同时还提供了丰富的设置选项。但是,对于特别大型项目或专业性较强的开发,VS Code 可能会有性能或功能限制。

Visual Studio Code (VSCode) 是一款跨平台、开源且免费的代码编辑器,由微软开发。它以轻量、可扩展性和对众多编程语言的支持而著称。要安装 VSCode,请访问官方网站下载并运行安装程序。使用 VSCode 时,可以创建新项目、编辑代码、调试代码、导航项目、扩展 VSCode 和管理设置。VSCode 适用于 Windows、macOS 和 Linux,支持多种编程语言,并通过 Marketplace 提供各种扩展。它的优势包括轻量、可扩展性、广泛的语言支持、丰富的功能和版

Linux的主要用途包括:1.服务器操作系统,2.嵌入式系统,3.桌面操作系统,4.开发和测试环境。Linux在这些领域表现出色,提供了稳定性、安全性和高效的开发工具。

要查看 Git 仓库地址,请执行以下步骤:1. 打开命令行并导航到仓库目录;2. 运行 "git remote -v" 命令;3. 查看输出中的仓库名称及其相应的地址。
