227 lines
7.8 KiB
Markdown
227 lines
7.8 KiB
Markdown
# Build docker image
|
|
|
|
% cd <app source directory>
|
|
% docker build --tag mahesh/mma-gpacts-app --no-cache .
|
|
|
|
*Note*: If `--no-cache` is not used, cloning of git repo from the docker file does not work in subsequent builds
|
|
|
|
# Run docker container
|
|
|
|
% docker run --publish 49330:3000 --detach mahesh/mma-gpacts-app
|
|
7e4dfed65d776e3c8cd8e5c6e970699b561bbbc6f2d63d5d75b7ee68c9672358
|
|
|
|
# Get a shell in running container
|
|
|
|
% docker exec --interactive --tty 7e4dfed65d776e3c8cd8e5c6e970699b561bbbc6f2d63d5d75b7ee68c9672358 /bin/bash
|
|
|
|
# Manage docker containers
|
|
|
|
* List running containers
|
|
|
|
```
|
|
% docker ps
|
|
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
|
d511b20c73d6 mahesh/mma-gpacts-app "docker-entrypoint.s…" 8 minutes ago Up 8 minutes 0.0.0.0:49330->3000/tcp upbeat_lederberg
|
|
```
|
|
|
|
* List all docker containrs
|
|
|
|
```
|
|
% docker ps --all
|
|
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
|
d511b20c73d6 mahesh/mma-gpacts-app "docker-entrypoint.s…" 12 minutes ago Exited (137) 3 minutes ago upbeat_lederberg
|
|
% docker ps --all --quiet
|
|
d511b20c73d6
|
|
```
|
|
|
|
* Stop a running container
|
|
|
|
```
|
|
% docker stop d511b20c73d6
|
|
```
|
|
|
|
* Remove a container
|
|
|
|
```
|
|
% docker rm d511b20c73d6
|
|
```
|
|
|
|
# BUMMER!
|
|
|
|
* [Google API client for Node.js](https://github.com/googleapis/google-api-nodejs-client) supports the following
|
|
APIs, but not Google Photos **!?#@**. Until [these](https://github.com/googleapis/google-api-nodejs-client/issues/1695)
|
|
[bugs](https://issuetracker.google.com/issues/138224490) are fixed, will need to use base OAuth2 to access the API.
|
|
|
|
```javascript
|
|
{
|
|
abusiveexperiencereport: [ 'v1' ],
|
|
acceleratedmobilepageurl: [ 'v1' ],
|
|
accessapproval: [ 'v1', 'v1beta1' ],
|
|
accesscontextmanager: [ 'v1', 'v1beta' ],
|
|
adexchangebuyer: [ 'v1.2', 'v1.3', 'v1.4' ],
|
|
adexchangebuyer2: [ 'v2beta1' ],
|
|
adexperiencereport: [ 'v1' ],
|
|
admin: [ 'datatransfer_v1', 'directory_v1', 'reports_v1' ],
|
|
admob: [ 'v1' ],
|
|
adsense: [ 'v1.4' ],
|
|
adsensehost: [ 'v4.1' ],
|
|
alertcenter: [ 'v1beta1' ],
|
|
analytics: [ 'v3' ],
|
|
analyticsreporting: [ 'v4' ],
|
|
androiddeviceprovisioning: [ 'v1' ],
|
|
androidenterprise: [ 'v1' ],
|
|
androidmanagement: [ 'v1' ],
|
|
androidpublisher: [ 'v1.1', 'v1', 'v2', 'v3' ],
|
|
appengine: [ 'v1', 'v1alpha', 'v1beta' ],
|
|
appsactivity: [ 'v1' ],
|
|
bigquery: [ 'v2' ],
|
|
bigqueryconnection: [ 'v1beta1' ],
|
|
bigquerydatatransfer: [ 'v1' ],
|
|
bigqueryreservation: [ 'v1', 'v1alpha2', 'v1beta1' ],
|
|
bigtableadmin: [ 'v1', 'v2' ],
|
|
billingbudgets: [ 'v1beta1' ],
|
|
binaryauthorization: [ 'v1', 'v1beta1' ],
|
|
blogger: [ 'v2', 'v3' ],
|
|
books: [ 'v1' ],
|
|
calendar: [ 'v3' ],
|
|
chat: [ 'v1' ],
|
|
civicinfo: [ 'v2' ],
|
|
classroom: [ 'v1' ],
|
|
cloudasset: [ 'v1', 'v1beta1' ],
|
|
cloudbilling: [ 'v1' ],
|
|
cloudbuild: [ 'v1', 'v1alpha1', 'v1alpha2' ],
|
|
clouddebugger: [ 'v2' ],
|
|
clouderrorreporting: [ 'v1beta1' ],
|
|
cloudfunctions: [ 'v1', 'v1beta2' ],
|
|
cloudidentity: [ 'v1', 'v1beta1' ],
|
|
cloudiot: [ 'v1' ],
|
|
cloudkms: [ 'v1' ],
|
|
cloudprivatecatalog: [ 'v1beta1' ],
|
|
cloudprivatecatalogproducer: [ 'v1beta1' ],
|
|
cloudprofiler: [ 'v2' ],
|
|
cloudresourcemanager: [ 'v1', 'v1beta1', 'v2', 'v2beta1' ],
|
|
cloudscheduler: [ 'v1', 'v1beta1' ],
|
|
cloudsearch: [ 'v1' ],
|
|
cloudshell: [ 'v1', 'v1alpha1' ],
|
|
cloudtasks: [ 'v2', 'v2beta2', 'v2beta3' ],
|
|
cloudtrace: [ 'v1', 'v2', 'v2beta1' ],
|
|
commentanalyzer: [ 'v1alpha1' ],
|
|
composer: [ 'v1', 'v1beta1' ],
|
|
compute: [ 'alpha', 'beta', 'v1' ],
|
|
container: [ 'v1', 'v1beta1' ],
|
|
containeranalysis: [ 'v1alpha1', 'v1beta1' ],
|
|
content: [ 'v2.1', 'v2' ],
|
|
customsearch: [ 'v1' ],
|
|
datacatalog: [ 'v1beta1' ],
|
|
dataflow: [ 'v1b3' ],
|
|
datafusion: [ 'v1beta1' ],
|
|
dataproc: [ 'v1', 'v1beta2' ],
|
|
datastore: [ 'v1', 'v1beta1', 'v1beta3' ],
|
|
deploymentmanager: [ 'alpha', 'v2', 'v2beta' ],
|
|
dfareporting: [ 'v3.3', 'v3.4' ],
|
|
dialogflow: [ 'v2', 'v2beta1' ],
|
|
digitalassetlinks: [ 'v1' ],
|
|
discovery: [ 'v1' ],
|
|
displayvideo: [ 'v1' ],
|
|
dlp: [ 'v2' ],
|
|
dns: [ 'v1', 'v1beta2', 'v2beta1' ],
|
|
docs: [ 'v1' ],
|
|
domainsrdap: [ 'v1' ],
|
|
doubleclickbidmanager: [ 'v1.1', 'v1' ],
|
|
doubleclicksearch: [ 'v2' ],
|
|
drive: [ 'v2', 'v3' ],
|
|
driveactivity: [ 'v2' ],
|
|
factchecktools: [ 'v1alpha1' ],
|
|
fcm: [ 'v1' ],
|
|
file: [ 'v1', 'v1beta1' ],
|
|
firebase: [ 'v1beta1' ],
|
|
firebasedynamiclinks: [ 'v1' ],
|
|
firebasehosting: [ 'v1beta1' ],
|
|
firebaserules: [ 'v1' ],
|
|
firestore: [ 'v1', 'v1beta1', 'v1beta2' ],
|
|
fitness: [ 'v1' ],
|
|
games: [ 'v1' ],
|
|
gamesConfiguration: [ 'v1configuration' ],
|
|
gamesManagement: [ 'v1management' ],
|
|
genomics: [ 'v1', 'v1alpha2', 'v2alpha1' ],
|
|
gmail: [ 'v1' ],
|
|
groupsmigration: [ 'v1' ],
|
|
groupssettings: [ 'v1' ],
|
|
healthcare: [ 'v1beta1' ],
|
|
homegraph: [ 'v1' ],
|
|
iam: [ 'v1' ],
|
|
iamcredentials: [ 'v1' ],
|
|
iap: [ 'v1', 'v1beta1' ],
|
|
identitytoolkit: [ 'v3' ],
|
|
indexing: [ 'v3' ],
|
|
jobs: [ 'v2', 'v3', 'v3p1beta1' ],
|
|
kgsearch: [ 'v1' ],
|
|
language: [ 'v1', 'v1beta1', 'v1beta2' ],
|
|
libraryagent: [ 'v1' ],
|
|
licensing: [ 'v1' ],
|
|
lifesciences: [ 'v2beta' ],
|
|
logging: [ 'v2' ],
|
|
managedidentities: [ 'v1', 'v1alpha1', 'v1beta1' ],
|
|
manufacturers: [ 'v1' ],
|
|
mirror: [ 'v1' ],
|
|
ml: [ 'v1' ],
|
|
monitoring: [ 'v1', 'v3' ],
|
|
networkmanagement: [ 'v1beta1' ],
|
|
oauth2: [ 'v1', 'v2' ],
|
|
osconfig: [ 'v1beta' ],
|
|
oslogin: [ 'v1', 'v1alpha', 'v1beta' ],
|
|
pagespeedonline: [ 'v1', 'v2', 'v4', 'v5' ],
|
|
people: [ 'v1' ],
|
|
playcustomapp: [ 'v1' ],
|
|
plus: [ 'v1' ],
|
|
policytroubleshooter: [ 'v1', 'v1beta' ],
|
|
poly: [ 'v1' ],
|
|
prod_tt_sasportal: [ 'v1alpha1' ],
|
|
proximitybeacon: [ 'v1beta1' ],
|
|
pubsub: [ 'v1', 'v1beta1a', 'v1beta2' ],
|
|
recommender: [ 'v1beta1' ],
|
|
redis: [ 'v1', 'v1beta1' ],
|
|
remotebuildexecution: [ 'v1', 'v1alpha', 'v2' ],
|
|
reseller: [ 'v1' ],
|
|
run: [ 'v1', 'v1alpha1', 'v1beta1' ],
|
|
runtimeconfig: [ 'v1', 'v1beta1' ],
|
|
safebrowsing: [ 'v4' ],
|
|
sasportal: [ 'v1alpha1' ],
|
|
script: [ 'v1' ],
|
|
searchconsole: [ 'v1' ],
|
|
secretmanager: [ 'v1', 'v1beta1' ],
|
|
securitycenter: [ 'v1', 'v1beta1', 'v1p1alpha1', 'v1p1beta1' ],
|
|
serviceconsumermanagement: [ 'v1' ],
|
|
servicecontrol: [ 'v1' ],
|
|
servicemanagement: [ 'v1' ],
|
|
servicenetworking: [ 'v1', 'v1beta' ],
|
|
serviceusage: [ 'v1', 'v1beta1' ],
|
|
sheets: [ 'v4' ],
|
|
siteVerification: [ 'v1' ],
|
|
slides: [ 'v1' ],
|
|
sourcerepo: [ 'v1' ],
|
|
spanner: [ 'v1' ],
|
|
speech: [ 'v1', 'v1p1beta1', 'v2beta1' ],
|
|
sql: [ 'v1beta4' ],
|
|
storage: [ 'v1', 'v1beta2' ],
|
|
storagetransfer: [ 'v1' ],
|
|
streetviewpublish: [ 'v1' ],
|
|
tagmanager: [ 'v1', 'v2' ],
|
|
tasks: [ 'v1' ],
|
|
testing: [ 'v1' ],
|
|
texttospeech: [ 'v1', 'v1beta1' ],
|
|
toolresults: [ 'v1beta3' ],
|
|
tpu: [ 'v1', 'v1alpha1' ],
|
|
translate: [ 'v2', 'v3', 'v3beta1' ],
|
|
vault: [ 'v1' ],
|
|
verifiedaccess: [ 'v1' ],
|
|
videointelligence: [ 'v1', 'v1beta2', 'v1p1beta1', 'v1p2beta1', 'v1p3beta1' ],
|
|
vision: [ 'v1', 'v1p1beta1', 'v1p2beta1' ],
|
|
webfonts: [ 'v1' ],
|
|
webmasters: [ 'v3' ],
|
|
websecurityscanner: [ 'v1', 'v1alpha', 'v1beta' ],
|
|
youtube: [ 'v3' ],
|
|
youtubeAnalytics: [ 'v1', 'v2' ],
|
|
youtubereporting: [ 'v1' ]
|
|
}
|
|
``` |