{"id":16331443,"url":"https://github.com/midoks/docker-learning","last_synced_at":"2025-05-15T16:14:51.545Z","repository":{"id":76206672,"uuid":"118546033","full_name":"midoks/docker-learning","owner":"midoks","description":null,"archived":false,"fork":false,"pushed_at":"2019-07-23T05:14:05.000Z","size":24163,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-15T16:14:45.984Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/midoks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-01-23T02:30:59.000Z","updated_at":"2019-07-23T05:14:08.000Z","dependencies_parsed_at":"2023-03-01T16:30:53.164Z","dependency_job_id":null,"html_url":"https://github.com/midoks/docker-learning","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midoks%2Fdocker-learning","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midoks%2Fdocker-learning/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midoks%2Fdocker-learning/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/midoks%2Fdocker-learning/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/midoks","download_url":"https://codeload.github.com/midoks/docker-learning/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254374535,"owners_count":22060612,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-10T23:27:04.128Z","updated_at":"2025-05-15T16:14:46.534Z","avatar_url":"https://github.com/midoks.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# docker-learning\n\n\n### Docker 安装\n- http://www.docker.com/\n- https://get.daocloud.io/toolbox/\n- http://www.linuxprobe.com/docker-windows-install.html\n- windows(docker-machine create --engine-registry-mirror=https://kntucbs4.mirror.aliyuncs.com -d virtualbox default)\n\n### 集群相关\n```\n\n```\n\n# Linux安装\n```\nsudo yum install -y yum-utils device-mapper-persistent-data lvm2\nsudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo\n\nsudo yum -y makecache fast\nsudo yum -y install docker-ce\nsudo service docker start\n```\n\n# docker 常用命令\n```\ndocker info\ndocker version\ndocker-compose --version\ndocker-machine --version\n\ndocker run -d -p 80:80 --name webserver nginx\ndocker ps\n\n\ndocker start web \t\t\t\t\t#启动容器名为web的容器\ndocker exec -it web /bin/bash \t\t#进入容器\ndocker stop web \t\t\t\t\t#停止容器\ndocker rm -f web \t\t\t\t\t#删除容器\ndocker rmi -f web \t\t\t\t\t#删除镜像\n\n\ndocker run -t -i 23ac40ed7f8b /bin/bash #进入镜像\n\n\ndocker stop $(docker ps -a -q) \t\t#停止所有的container，这样才能够删除其中的images\ndocker rm -f $(docker ps -a -q)\t#如果想要删除所有container的话再加一个指令\ndocker rmi -f $(docker images |  awk \"{print $3}\") #删除所有镜像\ndocker rmi -f $(docker images | grep \"^\u003cnone\u003e\" | awk \"{print $3}\") #想要删除untagged images，也就是那些id为\u003cNone\u003e的image的话可以用\n\n\ndocker network prune #删除不用的网络\n\n\ndocker export cbe3cb7799ed \u003e update.tar #容器导出\ndocker import - update \u003c update.tar \t#容器导入\n\ndocker save -o update1.tar update  \t#镜像备份\ndocker load \u003c update1.tar \t\t\t#镜像导入\n\n```\n\n# 镜像的操作\n```\ndocker images\ndocker rmi ad673a791d21  #删除images\n```\n\n\n# mac\n- https://docs.docker.com/docker-for-mac/\n```\n\n\n```\n\n\n### --add-cap\n\n|Docker’s capabilities\t|Linux capabilities\t| Capability Description|\n|-|-|-----------------------|\n|SETPCAP|CAP_SETPCAP|Modify process capabilities.|\n|MKNOD|CAP_MKNOD|Create special files using mknod(2).|\n|AUDIT_WRITE|CAP_AUDIT_WRITE|Write records to kernel auditing log.|\n|CHOWN|CAP_CHOWN|Make arbitrary changes to file UIDs and GIDs (see chown(2)).|\n|NET_RAW|CAP_NET_RAW|Use RAW and PACKET sockets.|\n|DAC_OVERRIDE|CAP_DAC_OVERRIDE|Bypass file read, write, and execute permission checks.|\n|FOWNER|CAP_FOWNER\tBypass|permission checks on operations that normally require the file system UID of the |process to match the UID of the file.|\n|FSETID|CAP_FSETID|Don’t clear set-user-ID and set-group-ID permission bits when a file is modified.|\n|KILL|CAP_KILL|Bypass permission checks for sending signals.|\n|SETGID|CAP_SETGID|Make arbitrary manipulations of process GIDs and supplementary GID list.|\n|SETUID|CAP_SETUID|Make arbitrary manipulations of process UIDs.|\n|NET_BIND_SERVICE|CAP_NET_BIND_SERVICE\t|Bind a socket to internet domain privileged ports (port numbers less than 1024).|\nSYS_CHROOT|CAP_SYS_CHROOT|Use chroot(2), change root directory.|\nSETFCAP|CAP_SETFCAP|Set file capabilities.|\n\n- 下面表格中列出的Capabilities是docker默认删除的Capabilities，用户可以通过--cap-add添加其中一个或者多个。\n\n|Docker’s capabilities|Linux capabilities|Capability Description|\n|-|-|-----------------|\n|SYS_MODULE|CAP_SYS_MODULE|Load and unload kernel modules.|\n|SYS_RAWIO|CAP_SYS_RAWIO|Perform I/O port operations (iopl(2) and ioperm(2)).|\n|SYS_PACCT|CAP_SYS_PACCT|Use acct(2), switch process accounting on or off.|\n|SYS_ADMIN|CAP_SYS_ADMIN|Perform a range of system administration operations.|\n|SYS_NICE|CAP_SYS_NICE|Raise process nice value (nice(2), setpriority(2)) and change the nice value for arbitrary processes.|\n|SYS_RESOURCE|CAP_SYS_RESOURCE|Override resource Limits.|\n|SYS_TIME|CAP_SYS_TIME|Set system clock (settimeofday(2), stime(2), adjtimex(2)); set real-time (hardware) clock.|\n|SYS_TTY_CONFIG\t|CAP_SYS_TTY_CONFIG|Use vhangup(2); employ various privileged ioctl(2) operations on virtual terminals.|\n|AUDIT_CONTROL|CAP_AUDIT_CONTROL|Enable and disable kernel auditing; change auditing filter rules; retrieve auditing status and filtering rules.|\n|MAC_OVERRIDE|CAP_MAC_OVERRIDE|Allow MAC configuration or state changes. Implemented for the Smack LSM.\n|MAC_ADMIN|CAP_MAC_ADMIN|Override Mandatory Access Control (MAC). Implemented for the Smack Linux Security Module (LSM).\n|NET_ADMIN|CAP_NET_ADMIN|Perform various network-related operations.\n|SYSLOG|CAP_SYSLOG|Perform privileged syslog(2) operations.\n|DAC_READ_SEARCH|CAP_DAC_READ_SEARCH|Bypass file read permission checks and directory read and execute permission checks.|\n|LINUX_IMMUTABLE|CAP_LINUX_IMMUTABLE|Set the FS_APPEND_FL and FS_IMMUTABLE_FL i-node flags.|\n|NET_BROADCAST|CAP_NET_BROADCAST|Make socket broadcasts, and listen to multicasts.|\n|IPC_LOCK|CAP_IPC_LOCK|Lock memory (mlock(2), mlockall(2), mmap(2), shmctl(2)).|\n|IPC_OWNER|CAP_IPC_OWNER|Bypass permission checks for operations on System V IPC objects.|\n|SYS_PTRACE|CAP_SYS_PTRACE|Trace arbitrary processes using ptrace(2).|\n|SYS_BOOT|CAP_SYS_BOOT|Use reboot(2) and kexec_load(2), reboot and load a new kernel for later execution.\nLEASE|CAP_LEASE|Establish leases on arbitrary files (see fcntl(2)).|\n|WAKE_ALARM|CAP_WAKE_ALARM|Trigger something that will wake up the system.|\n|BLOCK_SUSPEND|CAP_BLOCK_SUSPEND|Employ features that can block system suspend.|\n\n\n### 火焰图\n```\n\n\n```","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmidoks%2Fdocker-learning","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmidoks%2Fdocker-learning","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmidoks%2Fdocker-learning/lists"}