Merge pull request #10453 from github/updates

Sync changes from upstream repository
This commit is contained in:
DMCA Sync Bot 2022-02-15 15:25:22 -08:00 committed by GitHub
commit 09ffd1489a
7 changed files with 3707 additions and 0 deletions

1
.github/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
node_modules/

View File

@ -0,0 +1,103 @@
import walkSync from "walk-sync";
import {
isFileInCorrectFolder,
isFilepathDateValid,
getNoticeCategory,
} from "./utils/validators.js";
import _ from "lodash";
const { partition } = _;
import { setOutput } from "@actions/core";
const { CHANGED_FILES } = process.env;
const dmcaFilesChangedInPr = CHANGED_FILES.split("\n").filter(
isFileInsideAYearFolder
);
const [prChangedFilesWithValidDates, prChangedFilesWithInvalidDates] =
partition(dmcaFilesChangedInPr, isFilepathDateValid);
const [prChangedFilesinCorrectFolder, prChangedFilesNotInCorrectFolder] =
partition(prChangedFilesWithValidDates, isFileInCorrectFolder);
let commentBody = `Thanks for the PR!
# Files changed in this PR
`;
let commentCopyForFilesChangedInThisPr =
prChangedFilesWithInvalidDates.length ||
prChangedFilesNotInCorrectFolder.length
? ` I've scanned the changed files and found some issues to double check:`
: ` All DCMA notices changed in this PR look good to me.`;
commentCopyForFilesChangedInThisPr += prChangedFilesWithInvalidDates.length
? `\n\n**Notices that don't contain a date that conforms to the YYYY-MM-DD format:**\n\n${prChangedFilesWithInvalidDates
.map((file) => `- ${file}`)
.join("\n")}`
: "";
commentCopyForFilesChangedInThisPr += prChangedFilesNotInCorrectFolder.length
? `\n\n**Notices that might need to be moved to the correct year/month folder:**\n\n${prChangedFilesNotInCorrectFolder
.map((file) => `- ${file}`)
.join("\n")}`
: "";
let commentCopyForCategoriesOfFilesChangedInThisPr = `\n\n**Notices appear to fall into the following categories:**
| Filepath | Category |
| --- | --- |
${dmcaFilesChangedInPr
.map((filepath) => {
const noticeCategory = getNoticeCategory(filepath);
return "| " + filepath + " | " + noticeCategory + " |";
})
.join("\n")}
`;
commentBody += commentCopyForFilesChangedInThisPr;
commentBody += commentCopyForCategoriesOfFilesChangedInThisPr;
const filesInDmcaNoticeFolders = walkSync(".", { directories: false })
.filter(isFileInsideAYearFolder)
.filter((file) => {
const isFileAmongChangedFiles = dmcaFilesChangedInPr.includes(file);
return !isFileAmongChangedFiles; // filter out files that are in the changed files list
});
const [filesWithValidDates, filesWithInvalidDates] = partition(
filesInDmcaNoticeFolders,
isFilepathDateValid
);
const [filesInCorrectFolder, filesNotInCorrectFolder] = partition(
filesWithValidDates,
isFileInCorrectFolder
);
let commentCopyForAllDmcaNoticesInRepo =
filesWithInvalidDates.length || filesNotInCorrectFolder.length
? `\n# Other Files in Repo\nI've also scanned the rest of the repo and found some files to double check:`
: `\n# Other Files in Repo\nThe other DCMA notices in the repo look good to me.`;
const invalidDatesList = filesWithInvalidDates.length
? `\n\n**Notices that don't contain a date that conforms to the YYYY-MM-DD format:**\n\n${filesWithInvalidDates
.map((file) => `- ${file}`)
.join("\n")}`
: "";
const incorrectFolderList = filesNotInCorrectFolder.length
? `\n\n**Notices that might need to be moved to the correct year/month folder:**\n\n${filesNotInCorrectFolder
.map((file) => `- ${file}`)
.join("\n")}`
: "";
commentCopyForAllDmcaNoticesInRepo += invalidDatesList;
commentCopyForAllDmcaNoticesInRepo += incorrectFolderList;
commentBody += commentCopyForAllDmcaNoticesInRepo;
setOutput("COMMENT_BODY", commentBody);
/**
* Returns true if the file is in a folder at the root directory of the repo of the form YYYY
* @param {string} filepath
* @returns {boolean}
*/
function isFileInsideAYearFolder(filepath) {
return filepath.match(/^\d{4}/) !== null;
}

3122
.github/script/validate-filepaths/package-lock.json generated vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,20 @@
{
"name": "validate-filepaths",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "node --experimental-vm-modules node_modules/jest/bin/jest.js"
},
"keywords": [],
"author": "",
"type": "module",
"devDependencies": {
"jest": "^27.5.1"
},
"dependencies": {
"@actions/core": "^1.6.0",
"lodash": "^4.17.21",
"walk-sync": "^3.0.0"
}
}

View File

@ -0,0 +1,86 @@
import {
getNoticeCategory,
isFileInCorrectFolder,
isFilepathDateValid,
} from "../validators";
describe("getNoticeCategory", () => {
it("should return takedown if the filepath does not match any of the regexes", () => {
const filepath = "2022/01/2022-01-01-abc.md";
expect(getNoticeCategory(filepath)).toBe("takedown");
});
it("should return `counternotice-retraction` if the filepath contains `Counter-Retraction`", () => {
const filepath = "2022/01/2022-01-01-abc-Counter-Retraction.md";
expect(getNoticeCategory(filepath)).toBe("counternotice-retraction");
});
it("should return `counternotice-retraction` if the filepath contains `CounterNotice-Retraction`", () => {
const filepath = "2022/01/2022-01-01-abc-CounterNotice-Retraction.md";
expect(getNoticeCategory(filepath)).toBe("counternotice-retraction");
});
it("should return `counternotice-reversal` if the filepath contains `CounterNotice-Reversal`", () => {
const filepath = "2022/01/2022-01-01-abc-CounterNotice-Reversal.md";
expect(getNoticeCategory(filepath)).toBe("counternotice-reversal");
});
it("should return `counternotice` if the filepath contains `CounterNotice`", () => {
const filepath = "2022/01/2022-01-01-abc-CounterNotice.md";
expect(getNoticeCategory(filepath)).toBe("counternotice");
});
it("should return `retraction` if the filepath contains `Retraction`", () => {
const filepath = "2022/01/2022-01-01-abc-Retraction.md";
expect(getNoticeCategory(filepath)).toBe("retraction");
});
it("should return `reversal` if the filepath contains `Reversal`", () => {
const filepath = "2022/01/2022-01-01-abc-Reversal.md";
expect(getNoticeCategory(filepath)).toBe("reversal");
});
});
describe("isFileInCorrectFolder", () => {
it("should return true if the file is in the correct year/month folder", () => {
const filepath = "2022/01/2022-01-01-abc.md";
expect(isFileInCorrectFolder(filepath)).toBe(true);
});
it("should return false if the filepath is not in the correct year/month folder", () => {
const filepath = "2022/02/2022-01-01-abc.md";
expect(isFileInCorrectFolder(filepath)).toBe(false);
});
it("should return true if the file is in the correct year folder for notices that predate October 10, 2018", () => {
const filepath = "2018/2018-01-01-abc.md";
expect(isFileInCorrectFolder(filepath)).toBe(true);
});
it("should return false if the filepath is not in the correct year folder for notices that predate October 10, 2018", () => {
const filepath = "2017/2018-01-01-abc.md";
expect(isFileInCorrectFolder(filepath)).toBe(false);
});
});
describe("isFilepathDateValid", () => {
it("should return true if the filepath contains a valid date", () => {
const filepath = "2022/01/2022-01-01-abc.md";
expect(isFilepathDateValid(filepath)).toBe(true);
});
it("should return false if the filepath does not contain a valid date", () => {
const filepath = "2022/01/2022-1-01-abc.md";
expect(isFilepathDateValid(filepath)).toBe(false);
});
it("should return false if the filepath does not contain a valid date", () => {
const filepath = "2022/01/2022-01-1-abc.md";
expect(isFilepathDateValid(filepath)).toBe(false);
});
it("should return false if the filepath does not contain a valid date", () => {
const filepath = "2022/01/202-01-01-abc.md";
expect(isFilepathDateValid(filepath)).toBe(false);
});
});

View File

@ -0,0 +1,66 @@
/**
* Returns true if the date portion of the filepath is in the form of YYYY-MM-DD.
* @param {string} filepath
* @returns {boolean}
*/
export function isFilepathDateValid(filepath) {
const filename = filepath.split("/").pop();
const dateStringInFilename = filename.match(/\d{4}-\d{2}-\d{2}/);
return dateStringInFilename !== null;
}
/**
* Returns true if the filepath indicates that the file resides in the correct folder.
* E.g., if the filepath is "2022/01/2022-01-01-abc.md", then the date portion
* appears to be in the correct folder.
* However, if the file predates the Children of the Great Foldering
* (https://github.com/github/dmca-internal/issues/4301), then the file should be
* in the year folder.
* @param {string} filepath
* @returns {boolean}
*/
export function isFileInCorrectFolder(filepath) {
const dateStringInFilename = filepath.match(
/(?<fileYear>\d{4})-(?<fileMonth>\d{2})-(?<fileDay>\d{2})/
);
if (dateStringInFilename === null) {
return false;
}
const { fileYear, fileMonth, fileDay } = dateStringInFilename.groups;
const fileDate = new Date(fileYear, fileMonth - 1, fileDay);
const dateWhenMonthlyFoldersWereImplemented = new Date(2018, 9, 10);
const [directoryYear, directoryMonth] = filepath.split("/");
return fileDate < dateWhenMonthlyFoldersWereImplemented
? directoryYear === fileYear
: directoryYear === fileYear && directoryMonth === fileMonth;
}
/**
* Returns one of the following DMCA notice categories based on the filepath:
* - takedown
* - takedown-retraction
* - takedown-reversal
* - counternotice
* - counternotice-retraction
* - counternotice-reversal
* @param {string} filepath
* @returns {string}
*/
export function getNoticeCategory(filepath) {
const filename = filepath.split("/").pop();
let noticeType =
[
...filename.matchAll(
/(CounterNotice-Retraction|CounterNotice-Reversal|Counter-Retraction|Retraction|CounterNotice|Reversal)/gi
),
][0]?.[1]?.toLowerCase() || "takedown";
if (noticeType === "counter-retraction") {
noticeType = "counternotice-retraction";
}
return noticeType;
}

View File

@ -0,0 +1,309 @@
Before disabling any content in relation to this takedown notice, GitHub
- contacted the owners of some or all of the affected repositories to give them an opportunity to [make changes](https://docs.github.com/en/github/site-policy/dmca-takedown-policy#a-how-does-this-actually-work).
- provided information on how to [submit a DMCA Counter Notice](https://docs.github.com/en/articles/guide-to-submitting-a-dmca-counter-notice).
To learn about when and why GitHub may process some notices this way, please visit our [README](https://github.com/github/dmca/blob/master/README.md#anatomy-of-a-takedown-notice).
---
**Are you the copyright holder or authorized to act on the copyright owner's behalf?**
Yes, I am authorized to act on the copyright owner's behalf.
**Are you submitting a revised DMCA notice after GitHub Trust & Safety requested you make changes to your original notice?**
No
**Does your claim involve content on GitHub or npm.js?**
GitHub
**Please describe the nature of your copyright ownership or authorization to act on the owner's behalf.**
Unauthorized distribution of text, Docker: Up and Running
**Please provide a detailed description of the original copyrighted work that has allegedly been infringed. If possible, include a URL to where it is posted online.**
text: Docker: Up and Running by [private] and [private] / Copyright registration [private]
**What files should be taken down? Please provide URLs for each file, or if the entire repository, the repositorys URL.**
https://github.com/anzhihe/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/abhijitdhar16/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/adarsh9714/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/aditya-bhuyan/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/aklcqq/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/akshayagathia/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/AlejoLovallo/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/alwaysused/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Amart85/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/amrtn/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/amsmoking/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/angelotinho/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/angp/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/aniruddhachoudhury/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/arun4cloud/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/arvindmits/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ashishx88/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/atulwan80/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/avinashj1011/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/AWSRJ/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/B1041CM4N/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/barakpinchovski/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/bartekkas/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/benzhemin/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Bilal-Akram/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/blqthien/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/bondan23/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/BooksOnGithub/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/c0deoo1/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/caezsar/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Caozhongm/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/caryw1987/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/charfeddinelaouini/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/cheny2intc/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Chivemarc-Codeworks/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Chivemarc-Groups/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ChivemarcTechnologies/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/chuksedison45/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/cnb0/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/coloristlife/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/coyang/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/csh-tech/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/cuihu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/daicamangdeplao/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ddukee/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/debidash2007/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/DevopsJithendra/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/devsecopsocp/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/vikash232/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/dileep143123/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/diplavsrivastava/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/divebook/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Diwahars/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/dMajoIT/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/dnhdang94/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/DocDocker/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/double12gzh/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Elijahscriptdev/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/elmergonzalezb/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ernestodavid/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Facundevx/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Fei-Liu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Felice1971/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/felipebarbosa29/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/felrock/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/fishgege/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Flexplicit/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/fr0z3nfyr/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/fsj2001/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/funhub1/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/G-ENG/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/geocio/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/GitBulk/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/gopi2252/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Gordey-Kachurin/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/gprasanthkumar/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hadoopwangbo/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hariishaa/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/HarshAtArkay/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hassleboy123/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hcloc/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hedaai/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/helixliu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/himashugit/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hoangtruongIT/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hsienchieh/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hungdha/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/hungld/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/iamadou/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/igbal614/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/immad-imtiaz/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/isdaniel/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ivan-vlasenko/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jarey/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jehadnasser/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jiayanju/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jiteshprakashsinha/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jonike/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Joseluismantilla/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/josephsim/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jothibasu-kamaraj/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/jpmac94/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/juanmaloaiza/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/justinuliu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/kejripraveen/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/khang21081995/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/khanhnt99/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/kimyvgy-forks/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/kyojinindie/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/lamoboos223/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/leiqi96/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/LennoLai/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/lorek123/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/lsword/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/lukeloNgajilo/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Luobin25/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/lylllou/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/lzw9560/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mariogrieco/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/megha0703/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mhnizam/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mir-dhaka/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mirjahongirbek/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mklee786/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mklee786/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mncugb/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/MonicaRamesh25/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mrsadko/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/MunirAbobaker/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/muradheydarov/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/mutebironald/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Nageshrathod7/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/NFTercel/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/nileshpangul4u/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/nimchukr/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/niroop87/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/novapyth/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/NUKSI911/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/omerd2/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/omudretsov/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pandaxcore/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/passoir/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pathakbhaskar/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pbkh-ratanak/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/performance12345/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/persistence18/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/PipeBlack/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pkjPathania/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pp74054/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/PS2U/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/puzzledstorm/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pvasadi/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pwnedDesal/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/qiangzii/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/r858r858/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/rajamodu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/rajneeshmehta/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/reetika-vyas/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Remi-Tribia/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/renzg/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/reymar111/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/rishisoni33/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/RJLABS/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/robbine75/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/rock16/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/rock16/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/romikumar7/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/rp-98/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/RunningIkkyu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/S-Polimetla/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Sabir001/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/SaiRameshKolli/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/salykin/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/sanbruno/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Sarfarazchohan311/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/sendpramod/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/shamiulshifat/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/shangadi/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/shaspen/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Sheelnidhi-g/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/shofukamachi/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/shoumitro-cse/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/shredstar/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/SiamAbdullah/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/SKDon/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/sleepyybear/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/sorrymynameistoolong/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/spyderlinux/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/sqlcloudstudy/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/srikanthbitra01/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/subhenduhota/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/sudeepvarma2017/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/suelspahiu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/SuHuanZhen0329/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/suleymanonal/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Suresh07babu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/tangoliu/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Tech-Save/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Tej-Singh-Rana/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/teobatman00/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/thanhluan18011997/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/tharindu-mp/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/theodesp/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/kkashyap1707/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/pejovski/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/therealthom/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/therobocademy/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/thienhv/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/tiagommourao/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ting8888/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Toflex/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/tojiboyevf/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/tomnyson/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/transacplus/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/truebalaji/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/tsgoswami/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/usmanalimaan/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/uxweb/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/v4ld3rr4m4/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/vaitheeswaran-p/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Vasif-Hasanov/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/veerapalla/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/vreddydevops/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/vinnu414/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/VinVaz/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/waldonhendricks/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/wirthandras/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/wkrea/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/WolfgangBai/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ww-cloudtech/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/xcaosta/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/xiaoxiao-clound/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/xiaoxuanzi/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/xsffsx/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/Yash5044/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/yqodsi/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/yushu9/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/ZaidRehman/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/zekeri-riya/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/zenki209/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/zhengqz/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/zjdsmile/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
https://github.com/zsj9509/Free-Docker-Books/blob/master/book/Docker%20-%20Up%20%26%20Running.pdf
**Do you claim to have any technological measures in place to control access to your copyrighted content? Please see our <a href="https://docs.github.com/articles/guide-to-submitting-a-dmca-takedown-notice#complaints-about-anti-circumvention-technology">Complaints about Anti-Circumvention Technology</a> if you are unsure.**
No
**<a href="https://docs.github.com/articles/dmca-takedown-policy#b-what-about-forks-or-whats-a-fork">Have you searched for any forks</a> of the allegedly infringing files or repositories? Each fork is a distinct repository and must be identified separately if you believe it is infringing and wish to have it taken down.**
yes, included
**Is the work licensed under an open source license?**
No
**What would be the best solution for the alleged infringement?**
Reported content must be removed
**Do you have the alleged infringers contact information? If so, please provide it.**
no
**I have a good faith belief that use of the copyrighted materials described above on the infringing web pages is not authorized by the copyright owner, or its agent, or the law.**
**I have taken <a href="https://www.lumendatabase.org/topics/22">fair use</a> into consideration.**
**I swear, under penalty of perjury, that the information in this notification is accurate and that I am the copyright owner, or am authorized to act on behalf of the owner, of an exclusive right that is allegedly infringed.**
**I have read and understand GitHub's <a href="https://docs.github.com/articles/guide-to-submitting-a-dmca-takedown-notice/">Guide to Submitting a DMCA Takedown Notice</a>.**
**So that we can get back to you, please provide either your telephone number or physical address.**
[private]
**Please type your full legal name below to sign this request.**
[private]