이 글은 Linux에 docker를 설치하는 방법과 docker의 기본 작동 방법을 설명합니다.
Docker는 Centos 7에서 실행되어야 하며 시스템은 64비트, 시스템 커널 버전은 3.10 이상
1.uname -an 현재 보기 시스템 버전
2.yum -y install docker docker 다운로드 및 설치
3.service docker start docker 서비스 시작
4.docker 버전 docker가 성공적으로 설치되었는지 확인하세요
아래 그림의 정보는 로컬 도커가 설치되었음을 의미합니다. 설치가 성공적이고 매우 간단합니다.
很 很 很 很컨테이너를 생성하려면 이미지를 기반으로 해야 합니다. 그럼 Docker 미러의 동작에 대해 이야기해보겠습니다
미러 검색
Docker 이미지 LL에서 다음 머신까지 볼 수 있습니다. 이미 이미지가 있나요?현재 머신에 이미지가 없습니다. Docker Hub로 이동하여 다운로드하세요(이미지도 사용자 정의할 수 있으므로 여기서는 자세히 설명하지 않겠습니다).
docker 검색 java, 다운로드할 특정 버전을 지정할 수도 있습니다. 예: docker. Ubuntu: 1.2.5.4를 검색하면 docker Hub를 검색할 수 있으며 많은 이미지가 나열됩니다.
이미지 다운로드
docker pull docker.io/nginx to downloaddownload to local 이미지가 더 큽니다. 다운로드 과정에서 자동으로 압축이 풀리기 때문에 docker Hub에서 검색한 것보다 이미지 목록을 보면 방금 다운로드한 이미지가 나옵니다
목록에는 창고 이름, 버전 라벨, 이미지 ID, 생성 시간 및 모든 공간 점유미러 삭제 쓸모없는 미러 docker rmi 미러 ID 삭제
3. 미러 생성 및 관리
이미 Nginx 미러를 다운로드했습니다. 다음으로 컨테이너를 생성합니다. Nginx 애플리케이션 docker run -i -t docker run -idt --name container_nginx -p 8080:80 docker.io/nginx
Note: 이름 앞에 -p가 두 개 있는데, docker.io/nginx는 이미지 이름이고, 8080은 호스트의 포트이고, 80은 Nginx의 포트입니다. application
호스트의 하나의 포트는 하나의 컨테이너 포트만 매핑할 수 있으며, 여러 개의 컨테이너 포트는 하나의 호스트 포트에 대응할 수 없습니다(센토스 같은 시스템에 컨테이너를 설치한 경우 컨테이너 포트를 임의로 설정할 수 있지만, 컨테이너에 간단한 애플리케이션만 있으면 컨테이너 포트는 애플리케이션의 자체 포트여야 합니다.)
이 방법으로 컨테이너를 만들고 시작합니다!
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
접속이 실패할 경우, 호스트 포트가 됩니다 방화벽이 켜져 있으니 다음 명령을 실행하여 닫으세요
/ sbin / iptables -I INPUT -p tcp --dport 8080 -j ACCEPT
' s 폐쇄 예정
-dock
-rreeedocker start docker run과 docker run의 차이점 容器删除之前先将容器停止
docker stop container_nginx 或者是容器的id
docker rm -f container_nginx 容器删除
호스트 파일과 컨테이너 파일은 서로 복사됩니다.
docker start name 启动一个已经创建的容器 docker run 创建并启动一个容器
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视频教程》
위 내용은 Docker의 Linux 설치 및 Docker의 기본 작업 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!