
Google Cloud Shell - mikecb
https://cloud.google.com/cloud-shell/
======
kaa2102
My company is launching a new web design and development service using Google
Cloud services. Initially, this was an experiment because we received some
Google Cloud hosting credits. We run LAMP (Linux-Apache-MySQL-PHP) stacks on
virtual machine instances on servers worldwide of our choosing.

After Google I/O, some webinars and testing I learned about how quickly new
websites and apps could be deployed, Google DNS for managing domains, App
Engine and other load balancing features that can help manage cost.

The ability to SSH into a virtual machine has proven quite useful to enable my
team to coordinate and manage projects. I am still open to using other
services like AWS but Google Cloud has been great - especially because they
also offer customer service for tech and billing issues.

~~~
miles932
disclaimer: I work at GCP

That is rad! Anything we can do to help? Link to the company?

~~~
kaa2102
Spendology is the company >>> spendology.net. Our new service is called Blue
Apex Digital. I just used Google DNS and Google Compute Engine to publish >>>
blueapexdigital.com. Thanks GCP!

I do have a quick question. I am running a LAMP stack with the A standing for
Apache. I put an "Index.html" and an "Index.php" file in my "www" folder. I
realize that new files append old files. However, I want to add a ".htaaccess"
file with DIRECTORY prioritization for the PHP file over the HTML.

I tried copying an htaaccess file via the gcloud command line tool but I got
an error. I've been looking through help, faqs, and searched but haven't seen
a solution as of yet. Did I miss something? Thanks!

~~~
fspoon
blueapexdigital.com fetches 5mb of pngs! You might want to optimize that.

~~~
kaa2102
Thanks for the input! I sat in on a couple image optimization sessions at
Google I/O. It's past time I whipped out the notes and got to work!

~~~
thegeekpirate
fwiw, this is currently my favourite site to check for possible optimizations,
I ran the test so you wouldn't have to wait 30 seconds in the queue ^_^
[http://yellowlab.tools/result/e7v314ikq3](http://yellowlab.tools/result/e7v314ikq3)

~~~
kaa2102
Thanks mate! Much appreciated! That's a really cool and useful site.

------
rexignis
I like this, and it feels "Google-y". Worried that a handful of us will use
it, lean on it heavily, and then Google will do what Google does and pull the
plug on it.

~~~
Klathmon
Well in all honesty if you end up leaning on it heavily in spite of the
warning you kind of deserve whatever you get...

>This is a Beta release of Cloud Shell. This feature is not covered by any SLA
or deprecation policy and may be subject to backward-incompatible changes.

~~~
rexignis
I wasn't explicit with my earlier comment, you're right about the beta period.
I was referring to after when they exit beta and are a good, useful service
for a year or two.

~~~
TheIronYuppie
Disclosure: I work for Google.

To the best of my recollection, I don't believe we've ever shutdown a product.
Was there one in particular that hit you? (Reader, Wave, etc are totally
different divisions.)

~~~
toyg
Google Code was first turned into a graveyard, then deprecated, and soon will
shut down altogether. Reader was not strictly a development tool (which is
what I guess you refer to as "your division"), but was heavily used by
developers, so it significantly disrupted people's workflow. Same for Wave and
any web API (there's quite a few of them which were unceremoniously dumped).

~~~
KirinDave
It is not really Google's fault that Code was not a successful product, other
than that they simply didn't have the energy/budget/will to actually make it a
competitive product with Github.

~~~
toyg
Saying Google "doesn't have the budget" to do something is fairly
preposterous, tbh. I can understand that they were wrong-footed by the rise of
Github; Code was built to compete with Sourceforge, when GH didn't even exist.
From day 1 though, it was clear that Code wasn't even "better enough" to
actually kill SF for good; further development was incredibly slow. When
Github hit their stride, Google reacted by just giving up. They didn't even
attempt a comeback.

So yeah, I think it's entirely their fault.

~~~
abiox
well, google isn't a small business, where "the budget" can be synonymous with
"the bank account(s)". like many (all?) large businesss, things are
organizationally regimented into units (and sub-units, etc), and budgets are
allocated toward each unit.

so while "google" might have funds, the "google code development team" may
have a very tiny allocation.

~~~
toyg
Of course, but budget allocation does not descend from Heaven fully formed, so
to speak. _Google directors_ (i.e. Google) decided Code was not a priority, so
in the end it's Google-the-company's fault that it had to close.

------
Wonnk13
Coming from an AWS shop, I guess I don't understand the use case(s) for this.
What this enable me to do that I couldn't accomplish by ssh'ing to any of the
boxes in my environment?

~~~
pacala
A few guesses:

a. It just works. No need to download and configure the right version of the
SDK.

b. Does not timeout when you close your laptop [I hope!].

c. I works on a Chromebook. Possibly not something you care about, but a
historical pain point for the consistency of Google offerings.

~~~
imissmyjuno
a. Which SDK? You mean the ssh client? b. Any custom software is wiped from
your account in about an hour, though. Also an SSH re-connect is not that big
a deal, IMO. c. There are SSH client Chrome Apps

I guess I still don't see the point but maybe I'm assuming that one is already
running a *nix and can either jump into the terminal there or connect a VM in
the cloud very easily. The convenience doesn't seem that large.

------
mark_l_watson
Nice idea. I do a lot of my development SSHing to a resource rich VPS. For
things that take a long time to run (Haskel stack builds, a long running
machine learning calculation, etc.) it is great to not run that stuff on a
laptop.

Cloud Shell is a bit different in the sense you would not want to try anything
resource intensive on a micro instance. But for coordinating other services it
makes sense.

I think Google needs to add one more thing to their cloud development toolkit:
a public version of something close to their cider web based IDE that gives
you access to work with any code you have in you private Google-hosted git
repos, AppEngine and VPS services. nitrous.io has something like this, and I
think that Google would do well to offer something similar for using the
public version of their infrastructure.

~~~
csells
Mark, if you'd like to try our version of a "web based IDE that gives you
access to work with any code you have in your private Google-hosted git
repos", check out the Source Editor feature of the Cloud Source Repositories:
[https://cloud.google.com/tools/cloud-
repositories/docs/cloud...](https://cloud.google.com/tools/cloud-
repositories/docs/cloud-repositories-files)

Also, we're alpha testing some integration with the Source Editor and the
Cloud Shell right now, so anyone that would like to participate in that alpha
test can drop me a line: csells@google.com.

Chris Sells Cloud Developer Tooling Product Manager

~~~
mark_l_watson
Thanks Chris.

------
p0ppe
> Use of the Cloud Shell is free through the end of 2015: you will not be
> charged for any resource utilization.

Would be nice if they could have stated how much it's going to cost later on.
We're less than three months from 2016.

~~~
Filligree
Well, it's a micro instance. At most it'll cost what a micro instance costs.

~~~
CamatHN
0.005 p/h ~ $3.60 per month for those who were wondering.

~~~
kuschku
So $1.20 more per month than more powerful VPS from competitors like OVH.

~~~
markvdb
I normally am quite reserved about language use, but comparing google to OVH?
Seriously? OVH is a dysfunctional company that somehow turns a profit.

We almost lost our company's domain name twice due to their incompetence.

~~~
hbogert
Why is OVH dysfunctional? My dedicated server is running splendid for 2y now.

~~~
KirinDave
Their customer service is notoriously... "hit or miss."

~~~
vidarh
Sounds like Google.

(Used OVH for several years, but my server with them has an uptime of 1034
days as of today, so customer service might very well be useless - I've never
had a reason to talk to them)

~~~
KirinDave
I used OVH and had a terrible, terrible, demanded a refund experience.

But I have something that approximates bad luck. See my earlier posts about
Project Fi.

------
iamleppert
What's the point of this? I can already ssh into any of my instances on AWS,
Linode, whatever platform.

Is it just because it's in the browser. Who cares...

~~~
teach
This is a big deal for high school students. They can use a school-issued
laptop, but they can't install custom software (like an ssh client), so sites
like Cloud9 provide access to something that would otherwise by inaccessible
to them.

Source: I'm a high school teacher at just such a school.

~~~
userbinator
SSH clients do not need installation. I keep a copy of PuTTY on my USB drive
for this scenario.

~~~
teach
Yes, but there's also a whitelist for EXEs. As a teacher I can use PuTTY
without installing it, but the students can't always do so.

------
trident523
So, what if you don't have that button? Is there a minimum amount of product
you need to have before this service becomes active?

~~~
fitzwatermellow
No button for my domain account as well. Have billing enabled. And when I
attempt to send feedback on this issue, I get a "submission failed" error!

Have used micro instances in the past as remote development and deployment
environments and a micro instance and it works ok. Wondering if something in
between micro (0.7G) and standard (3.5G) might be better considering devenv
can get pretty beefed up using certain modern frameworks we won't mention by
name ;)

~~~
codywbratt
Hi! We're in the process of rolling this out to all accounts over the next
week or so. Stay tuned!

Cody Bratt, Google Developers Console Product Manager

------
colinbartlett
Wait, so this runs in a browser? Is the idea that you can then use a machine
like a Chromebook to handle your development?

~~~
KirinDave
It becomes increasingly clear over time why Google is investing so heavily in
the "web pages that have the capabilities, performance and experience of a
desktop application" branches of modern browser development now.

And the new Nexus Tablet, everyone hoping it will run Android Studio? It's
entirely possible next year we'll see JetBrains and Google convert that
environment over to web as well. JB's been doing a lot of that work
independently, already.

------
stephendicato
This doesn't actually appear to be new; at least not that I can tell.

Google Cloud has supported being able to open an SSH session to any of your
instances right from the browser for awhile. I've found it to be a killer
feature and am really surprised Amazon Web Services does not offer the same
thing.

~~~
metric10
It's a preconfigured VM that includes all the tools for developing for Google
Cloud Platform. You just click a button on a console and you have everything
you need, with a 5GB persistent $HOME directory.

True, you could do everything this is doing with Compute Engine. The point is
that it's always one-click away and there's no setup, maintenance, or (for the
time being) cost.

~~~
stephendicato
Ah, makes sense! Thanks for the clarification.

This could be a nice way to isolate operations of production infrastructure.
You could go as far as issuing Chromebooks dedicated to the task.

------
andmarios
Albeit much different, yet with some common ideas, I've created a docker
“devops environment” image, that if you provide with a GCE service account, it
will auto-activate google cloud and even setup ansible to work with your gce
project. Emacs and vim are provided, pre-configured to a certain degree. The
best usage scenario would be emacs+golang but there is basic support for other
languages. There are some other conveniences too, like bash-completion being
enabled (no more need for remembering all git flags).

If anyone is interested or want to borrow some ideas:

[https://hub.docker.com/r/andmarios/devenv/](https://hub.docker.com/r/andmarios/devenv/)

[https://github.com/andmarios/docker/tree/master/devenv](https://github.com/andmarios/docker/tree/master/devenv)

------
rmac
As a long time user of googles web based terminal (accessed normally through
google cloud platform console by listing your VMs and clicking the SSH
button):

I love it because I don't need to worry about key management and can access my
machines anywhere that has a browser.

However, my few gripes are:

1)when copying text out of the web terminal window that spans multiple lines
(on Mac osx chrome), newlines are inserted.

2) ctrl v doesn't work (nano/pico)

3) Ctrl c sometimes doesn't work

~~~
balls187
> ctrl v doesn't work (nano/pico)

OT, this is a big reason why I encourage people to learn vi/vim.

It doesn't rely on ctrl, and can be used in environments that do weird
mappings to control characters. Anything you can do with ctrl, can be done
with regular keys and commands.

~~~
hbogert
So if the environment is broken, or at least subpar when it comes to
functionality, you "fix" the application?

~~~
balls187
I cut my engineering teeth having to work on a lot of disparate systems run by
the US DOD: VAX, True64, PC Linux, SGI. Having a single dependable text editor
that worked across all of them consistently was important. Those environments
were neither "subpar", nor were they "broken."

------
paradite
I don't see how this is better than c9.io, nitrous.io or ssh into your own
VPS. I guess it is developed just for the people who use Google Cloud?

~~~
ivan_burazin
We at Codeanywhere.com offer Web based SSH into any type of server as well

------
readstoomuch
> We are also working on a solution that would persist custom packages across
> sessions on different VM instances.

Nix?

------
rsync
I'm going to spin this up today and see how it integrates with rsync.net.

We have 'gsutil' in our environment, so you can do things like:

    
    
      ssh user@rsync.net gsutil ... blah ... blah ...
    

but if there is a google shell that you can use to manipulate those same
items, then presumably you could do data transfer to/from rsync.net _from
within that shell_.

Not everyone has a use-case like this, but some folks do ... so we'll see how
it works ...

------
i336_
Congratulations for getting this far down the page.

Now open the shell and traceroute (install it) to google.com. :)

(Other fun things: traceroute can't find your external IP; you have ~250Mbps
download; you're on a Xeon with 32GB RAM of which you have 512MB; I can't
remember anything else.)

------
electic
I really wish GC had some sort of client facing VPN service so that I do not
have to create VM instances that have SSH open to the public. This is a good
first step, but from what I can see it does not give me access to my LAN just
the gcloud cli.

------
ne01
At SunSed.com we moved from linode to GC a year ago! It has been great! The
only thing that I am currently looking for is GC HTTP(S) load balancing
support for HTTP/1.1 100 Continue response.

------
obulpathi
This is perfect for services like Bastion, Gateways, CRON jobs.

------
therealmarv
Reminds me that I'm missing GoogleCL a lot. Info: Project is discontinued and
not working anymore because it was using OAuth1... they could not upgrade to
OAuth2 oO

------
brohoolio
I've been pushing my current company towards Google cloud because of the
billing. Sure AWS is great with reserved instances etc but in our environment
I don't know what we will look like 6 months from now in terms of instances.
With Google we'd be burning way less cash with our 100 or so instances.

------
swiley
Still not good enough to compile most of their "open source" projects.

------
betaby
Does it have IPv6 address?

~~~
p1mrx
Of course there's no IPv6 address. Compute Engine exists within a parallel
universe where the IETF disbanded in 1997.

------
mahouse
This is cool, I just want an IRC bouncer.

